如何阻止在 Debian 上安装软件包?

如何阻止在 Debian 上安装软件包?

对于 Debian,我想阻止软件包安装。例如,我希望 puppet 和超级用户无法安装ruby1.8,即使ruby1.8请求安装依赖项列表中的软件包:puppet 运行将失败,因此也会

# apt-get install ruby1.8

我想要的可以实现吗?如果可以,我该怎么做?

答案1

这应该可行。将此文本插入到您的/etc/apt/preferences文件中:

Package: <packagename>
Pin: release *
Pin-Priority: -1

答案2

今天我第二次从 Kubuntu 22.04 中清除了 wslu,并寻找一种方法来阻止它再次被拉入,因为它会干扰正常的 KDE Plasma 功能。

搜索首先显示此页面。但更旧的页面给出了更好的答案:

使用 equivs-control 和 equivs-build创建一个与您想要列入黑名单的软件包相冲突的假软件包。然后以通常的方式安装您的假软件包。这非常简单、快速且令人满意。

简而言之,将 wslu 列入黑名单:

equivs-control no-wslu

这将创建一个通用包控制文件无 wslu来自模板。使用您最喜欢的文本编辑器只需更改此文件的几行:

Package: no-wslu
Version: 1.0
Conflicts: wslu
Description: Conflict with wslu to prevent its installation.

保存文件后:

equivs-build no-wslu

其次是:

sudo dpkg -i no-wslu_1.0_all.deb

完毕。

有关详细参考,请参阅Debian 管理员手册 - 构建你的第一个软件包

相关内容