禁用/删除Apt(-get)

无论如何,禁用/删除基于debian的服务器上的apt-get。 我宁愿使用aptitude,也不希望其他用户使用apt-get来安装软件包,以避免软件包/数据库问题。

人们同时使用这两种工具没有问题。 我经常从命令行使用apt-get或aptitude安装东西,或者使用curses界面来执行安全更新。 apt-get和aptitude都是libapt-pkg的前端,它处理软件包的依赖关系parsing和获取。 libapt-pkg依次使用dpkg来执行实际的软件包安装。 dpkg和libapt-pkg都会在正确的位置locking,所以如果有人正在运行aptitude,则其他人无法通过apt-get安装软件包,直到aptitudeclosures。

由于apt-get自动依赖性支持,没有一个工具优于其他[0]

[0]除了能力没有超牛的权力。

你可以这样做:

 chmod 0 /usr/bin/apt-get 

Ubuntu官方build议使用apt-get, rgrep apt-get /usr/lib/python2.6/dist-packages/DistUpgrade来查看它。 去除apt-get或者改变它的权限对于debian公用程序来说可能是有问题的,因为它们可能会使得它相对安全。

apt-get和aptitude之间没有区别的想法是荒谬的。 是的,他们处理相同的存储库,但以不同的方式进行处理。 没有太多的细节,添加软件包大致相同,但如果你想删除一个软件包或改变的东西,你不能混合两者,并期望好的结果。

在您最喜爱的search引擎上search“aptitude vs apt-get”,了解有关差异的详细文章。

话虽如此,你可以把它添加到你的/root/.bashrc文件中:

别名apt-get =“echo”请在这个系统上使用aptitude。'“

然后:

源/root/.bashrc

有很多方法可以做到这一点,但用户可以安装软件包的事实意味着它们具有根级别访问权限。

如果他们有root权限,你必须记住root可以做的任何事情,root可以撤销(在这种情况下)。

所有这一切,我会说,“最安全”的方式是删除(但保留副本)在/ etc / apt sources.list文件。

这样,apt-get的所有不同变体(如aptitude和谁知道其他什么)将无法正常工作。 用户重build(稍微)困难比撤消特定命令的“chmod 0”。