要在Debian/Ubuntu系统下从apt升级中排除/保留/阻止特定软件包,有三种方法可以完成:使用apt-mark、dpkg、aptitude命令,以下详细介绍。
方法1:如何使用apt-mark命令排除Debian/Ubuntu系统上的软件包更新 apt-mark用于将软件包标记/取消标记为自动安装。 hold选项用于将软件包标记为已阻止,以防止软件包被自动安装、升级或删除。 unhold选项用于取消对包装的先前设置的保留,以允许重复执行所有操作。 运行以下命令以使用apt-mark命令保存给定的软件包: $ sudo apt-mark hold nano nano set on hold. 保留某些软件包后,请运行以下apt-mark命令以查看它们: $ sudo apt-mark showhold nano 这将表明在执行完整的系统更新时不会升级“nano”软件包: $ sudo apt update 返回: Reading package lists… Done Building dependency tree Reading state information… Done Calculating upgrade… Done The following packages have been kept back: nano 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. 运行以下命令以使用apt-mark命令取消对“nano”软件包的保留: $ sudo apt-mark unhold nano Canceled hold on nano.
方法2:如何使用dpkg命令在Debian/Ubuntu系统上排除软件包更新 dpkg命令是一个CLI工具,用于安装、构建、删除和管理Debian软件包。dpkg对用户友好的前端是aptitude。 运行以下命令以使用dpkg命令阻止给定的软件包。 句法: $ echo "package_name hold" | sudo dpkg --set-selections 运行以下dpkg命令以保存“apache2”软件包: $ echo "apache2 hold" | sudo dpkg --set-selections 保留某些软件包后,请运行以下命令以查看它们: $ sudo dpkg --get-selections | grep "hold" apache2 hold 这将表明在执行完整的系统更新时不会升级“apache2”软件包: $ sudo apt update 返回: Reading package lists… Done Building dependency tree Reading state information… Done Calculating upgrade… Done The following packages have been kept back: apache2 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. 句法: $ echo "package_name install" | sudo dpkg --set-selections 运行以下命令以使用dpkg命令取消对“apache2”软件包的保留: $ echo "apache2 install" | sudo dpkg --set-selections 参考:dpkg命令_Linux dpkg命令使用详解:Debian Linux系统上安装、创建与管理软件包。
方法3:如何使用aptitude命令排除Debian/Ubuntu系统上的软件包更新 aptitude是Debian及其衍生版本的基于文本的软件包管理界面。它允许用户查看软件包列表并执行软件包管理任务,例如安装、升级和删除软件包。可以从可视界面或命令行执行操作。 运行以下命令以使用aptitude命令保存给定的软件包: $ sudo aptitude hold python3 保留某些软件包后,请运行以下aptitude命令查看它们: $ sudo dpkg --get-selections | grep "hold" or $ sudo apt-mark showhold python3 这将表明在执行完整的系统更新时不会升级“python3”软件包: $ sudo apt update 返回: Reading package lists… Done Building dependency tree Reading state information… Done Calculating upgrade… Done The following packages have been kept back: python3 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. 运行以下命令以使用apt-mark命令取消对“python3”软件包的保留: $ sudo aptitude unhold python3
相关主题 |