日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

從 apt 升級中排除/保留/阻止特定軟件包的三種方法

 蘇醒的貝殼 2020-03-15

從 apt 升級中排除/保留/阻止特定軟件包的三種方法

有時,由于某些應用依賴性,你可能會意外更新不想更新的軟件包。-- Magesh Maruthamuthu(作者)

有時,由于某些應用依賴性,你可能會意外更新不想更新的軟件包。這在全系統更新或自動包升級時經常會發(fā)生。如果發(fā)生這種情況,可能會破壞應用的功能。這會造成嚴重的問題,你需要花費大量時間來解決問題。

如何避免這種情況?如何從 apt-get 更新中排除軟件包?

如果你要 從 Yum Update 中排除特定軟件包 ,請參考這篇。

是的,可以在 Debian 和 Ubuntu 系統上使用以下三種方法來完成。

  • apt-mark 命令
  • dpkg 命令
  • aptitude 命令

我們將分別詳細展示。

方法 1:如何使用 apt-mark 命令排除 Debian/Ubuntu 系統上的軟件包更新

apt-mark 用于將軟件包標記/取消標記為自動安裝。

hold 選項用于將軟件包標記為保留,以防止軟件包被自動安裝、升級或刪除。

unhold 選項用于取消先前面的設置,以允許重復執(zhí)行所有操作。

運行以下命令以使用 apt-mark 命令保留指定的軟件包。

$ sudo apt-mark hold nanonano set on hold.

保留軟件包后,請運行以下 apt-mark 命令查看它們。

$ sudo apt-mark showholdnano

這表明在執(zhí)行完整的系統更新時,不會升級 nano 包。

$ sudo apt updateReading package lists… DoneBuilding dependency treeReading state information… DoneCalculating upgrade… DoneThe following packages have been kept back:  nano0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

運行以下命令,使用 apt-mark 命令取消保留 nano 包。

$ sudo apt-mark unhold nanoCanceled 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

它會顯示在執(zhí)行完整的系統更新時,不會升級 apache2包。

$ sudo apt updateReading package lists… DoneBuilding dependency treeReading state information… DoneCalculating upgrade… DoneThe following packages have been kept back:  apache20 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

運行以下命令,使用 dpkg 命令取消對指定軟件包的保留。

語法:

$ echo 'package_name install' | sudo dpkg --set-selections

運行以下命令,使用 dpkg 命令取消保留 apache2 包。

$ echo 'apache2 install' | sudo dpkg --set-selections

方法 3:如何使用 aptitude 命令排除 Debian/Ubuntu 系統上的軟件包更新

aptitude 命令是 Debian 及其衍生版本的基于文??本的軟件包管理界面。

它允許用戶查看軟件包列表并執(zhí)行軟件包管理任務,例如安裝、升級和刪除軟件包。它可以從可視界面或命令行執(zhí)行操作。

運行以下命令,使用 aptitude 命令保留指定的軟件包。

$ sudo aptitude hold python3

保留某些軟件包后,請運行以下命令查看它們。

$ sudo dpkg --get-selections | grep 'hold'或者$ sudo apt-mark showholdpython3

這表明在執(zhí)行完整的系統更新時,不會升級 python3 軟件包。

$ sudo apt updateReading package lists… DoneBuilding dependency treeReading state information… DoneCalculating upgrade… DoneThe following packages have been kept back:  python30 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

使用 aptitude 命令運行以下命令以解除對 python3 軟件包的保留。

$ sudo aptitude unhold python3

via: https://www./debian-ubuntu-exclude-hold-prevent-packages-from-apt-get-upgrade/

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多