如何从命令行启用或禁用 -updates、-security、-backports、-proposed 存储库?

N0r*_*ert 6 updates update-manager package-management command-line apt

假设我们使用的是 Ubuntu 18.04 LTS (Bionic Beaver)。

我知道启用或禁用以下存储库的 GUI 方法:

  1. 重要的安全更新 ( bionic-security)
  2. 推荐更新( bionic-updates)
  3. 预发布更新( bionic-proposed)
  4. 不支持的更新( bionic-backports)

在 KDE 中,用户可能想要打开软件和更新(或software-properties-kde)并导航到更新选项卡。
在GNOME,MATE,Xfce的用户应打开软件和更新(或software-properties-gtk)并导航到更新选项卡-security-updates-backports开发者选择的选项卡-proposed

但是如何从命令行启用或禁用-updates, -security, -backports,-proposed存储库?

注意:我需要一个无需直接编辑/etc/apt/sources.list.

更新:我创建了名为“Ubuntu 是否需要控制台替代软件-properties-gtk / software-properties-kde?”的讨论和投票。在 community.ubuntu.com 上

agu*_*slr 5

注意:我需要一个不直接编辑/etc/apt/sources.list.

使用findsed注释掉这些行是否会被视为直接编辑

要禁用这些行:

find /etc/apt -type f -name '*.list' -exec sed -i 's/\(^deb.*-backports.*\)/#\1/; s/\(^deb.*-updates.*\)/#\1/; s/\(^deb.*-proposed.*\)/#\1/; s/\(^deb.*-security.*\)/#\1/' {} +
Run Code Online (Sandbox Code Playgroud)

或者,我们可以删除它们:

find /etc/apt -type f -name '*.list' -exec sed -i '/-backports/d; /-updates/d; /-proposed/d; /-security/d' {} +
Run Code Online (Sandbox Code Playgroud)

要再次启用它们:

find /etc/apt -type f -name '*.list' -exec sed -i 's/^#\(deb.*-backports.*\)/\1/; s/^#\(deb.*-updates.*\)/\1/; s/^#\(deb.*-proposed.*\)/\1/; s/^#\(deb.*-security.*\)/\1/' {} +
Run Code Online (Sandbox Code Playgroud)