apt 包管理器如何判断某个包是否未使用?

apt 包管理器如何判断某个包是否未使用?

可以方便地apt-get找到未使用的软件包并将其删除,以保持系统清洁sudo apt-get autoremove

apt但是,将包定义为“未使用”的具体标准是什么?

我想用它来清理我的 Ubuntu 安装,但如果它在某种程度上是推测性的或者有破坏共享库的风险,我宁愿继续生活在我的服务器的污秽之中。

答案1

如果软件包满足两个条件,它将被 apt 标记为未使用:

  1. 如果它作为另一个依赖项自动安装

  2. 不再有依赖它的软件包

摘录自http://manpages.ubuntu.com/manpages/xenial/man8/apt.8.html

自动删除(apt-get(8))自动删除用于删除那些为了满足其他软件包的依赖关系而自动安装的软件包,由于依赖关系发生了变化,或者需要它们的软件包在此期间被删除,所以这些软件包现在不再需要了。

您应该检查列表是否包含您逐渐喜欢的应用程序,即使它们曾经只是作为另一个软件包的依赖项安装。您可以使用 apt-mark(8) 将此类软件包标记为手动安装。您通过 install 明确安装的软件包也永远不会被建议自动删除。

答案2

对于每个已安装的包,包管理器都会保留该包是否被标记为“自动安装”的记录以及其他元数据。

在操作系统安装期间安装的软件包永远不会被标记为自动安装。

当您安装某个软件包时,可能会导致其他您未请求的软件包也同时安装。这些额外的软件包将被标记为自动安装。

这只是一个方便的功能,可让您删除可能不再需要的垃圾。您不必利用它,但如果利用了,您可以删除任何不再依赖手动安装包的自动安装包apt-get autoremove

相关内容