如何使用Apt工具禁用/锁定或黑名单包更新

在本文中,我们将看到在Debian,Ubuntu和Mint系统中禁用/锁定或黑名单安装,升级和删除软件包的各种技术。

APT是指高级包装工具是基于Linux系统的发现了另一包管理器。 最初设计为一个前端的dpkg.deb软件包工作,容易成功,展现他在Mac OS中,开放的Solaris等知名度

在Debian和Ubuntu中使用APT禁用软件包更新

在Debian和Ubuntu中使用APT禁用软件包更新

要学习和掌握关于APTdpkg命令管理Debian软件包管理,然后利用我们深入的文章将涵盖两个工具超过30+的例子。

在本文中,我们将看到各种技术来禁用/锁定从Debian Linux及其衍生产品(如Ubuntu和Linux Mint)中安装,升级和删除软件包。

1.禁用/锁定包使用带apt / unhold选项的“apt-mark”

该命令的apt-标记将标记或取消标记软件包为被自动安装,它是用来与选择保留恢复通话

  1. 持有 -这个选项用来标记一个包作为忍住,这将被安装,升级或删除封锁包。
  2. 取消保留 -该选项用于在包中取出预先设定的保持,并允许安装,升级和删除软件包。

例如,制作一个包说apache2的安装不可用,向上渐变或卸载时,可以使用在以root权限终端下面的命令:

# apt-mark hold apache2

若要使此更新包,只需更换“ 持有 ”与“ 恢复通话 ”。

# apt-mark unhold apache2
在Ubuntu中保持软件包更新

在Ubuntu / Debian中保持软件包更新

使用APT首选项文件阻止包更新

阻止特定程序包的更新,另一种方法是增加其进入/etc/apt/preferences/etc/apt/preferences.d/official-package-repositories.pref文件。 此文件负责根据用户指定的优先级更新或阻止某些包更新。

要阻止包,您只需要输入其名称,附加功能,以及您想要使用的优先级。 这里,优先级< 1会阻止该包。

为了阻止任何包,只需在文件中输入其详细信息/etc/apt/preferences是这样的:

Package: <package-name> (Here, '*' means all packages)
Pin: release *
Pin-Priority: <less than 0>

例如,要阻止软件包apache2的更新,请添加如下所示的条目:

Package: apache2
Pin: release o=Ubuntu
Pin-Priority: 1
使用首选项文件阻止包更新

使用首选项文件阻止包更新

我们可以使用release关键字的其他选项来进一步识别我们应用引脚优先级的包。 这些关键字是:

  1. 一个 - >存档
  2. Ç - >组件
  3. Ø - >产地
  4. L - >标签
  5. N - >建筑

喜欢:

Pin: release o=Debian,a=Experimental

将意味着从Debian包中拉取所述包实验存档。

使用APT自动删除文件将列表更新黑名单

从安装黑名单一包的另一种方法是,以更新其在包含在文件中的一个条目/etc/apt/apt.conf.d/目录是01autoremove。

示例文件如下所示:

APT
{
NeverAutoRemove
{
"^firmware-linux.*";
"^linux-firmware$";
};
VersionedKernelPackages
{
# linux kernels
"linux-image";
"linux-headers";
"linux-image-extra";
"linux-signed-image";
# kfreebsd kernels
"kfreebsd-image";
"kfreebsd-headers";
# hurd kernels
"gnumach-image";
# (out-of-tree) modules
".*-modules";
".*-kernel";
"linux-backports-modules-.*";
# tools
"linux-tools";
};
Never-MarkAuto-Sections
{
"metapackages";
"restricted/metapackages";
"universe/metapackages";
"multiverse/metapackages";
"oldlibs";
"restricted/oldlibs";
"universe/oldlibs";
"multiverse/oldlibs";
};
};

现在,对于任何列入黑名单包,只需要输入其名字Never-MarkAuto-Sections 就在最后输入包的名称Never-MarkAuto-Section和保存并关闭文件。 这将阻止适合搜索该包的进一步更新。

例如,要将包更新为黑名单,请添加如下所示的条目:

Never-MarkAuto-Sections
{
"metapackages";
"restricted/metapackages";
"universe/metapackages";
"multiverse/metapackages";
"oldlibs";
"restricted/oldlibs";
"universe/oldlibs";
"multiverse/oldlibs";
"apache2*";
};
};

更新的自定义包选择

另一个选择是选择您要更新的内容。 apt工具让你自由选择要更新什么,但对于这个您有关于什么都包可用于上行层次的知识。

对于这样的事情,下面的命令集可以证明是有帮助的:

a。要列出哪些软件包有未处理的更新。

# apt-get -u -V upgrade

b。要安装只选择包。

# apt-get --only-upgrade install <package-name>
更新所选包

更新所选包

结论

在本文中,我们解释了使用APT方式禁用/阻止或黑名单包更新的几种方法。 如果你知道任何其他首选方式,请通过评论告诉我们,或者如果你正在寻找yum命令来禁用/锁定包更新,然后阅读这篇文章。