停止任意“以下软件包已自动安装,不再需要”

Isa*_*acS 5 apt

由于我发现了类似的线程 ( 1 , 2 ) 但对我的问题没有帮助,因此我提出了一个新问题。

有时,当我运行时apt-get,我会得到:

The following packages were automatically installed and are no longer required:
:
  (list of packages)
Run Code Online (Sandbox Code Playgroud)

这经常发生在我大量使用的软件包中。然而,因为它们不被操作系统使用,如果required意味着操作系统是用来要求这些包的,那么错误消息本身就有意义。

我怎样才能阻止这种情况发生/让操作系统知道我需要这些包?

由于在某些情况下此通知实际上很有用(例如,不再需要操作系统曾经需要的软件包,而我也不再使用它们),因此我更喜欢允许逐个设置的解决方案/解决方法。

apt 0.8.16~exp12ubuntu10.11

ger*_*ijk 5

如果您使用标记为“自动安装”的包,您应该明确告诉包管理您需要它们而不是依赖项:

sudo apt-mark unmarkauto packagename
Run Code Online (Sandbox Code Playgroud)

如果您安装了安装多个依赖项(例如 package-y、package-z)的 package-x,则在软件包安装上使用此自动/手动标记的目的是保持系统清洁。如果您在某天之后删除 package-x,APT 将知道不再需要 package-y 和 package-z - 用于sudo apt-get autoremove执行删除。

不要将依赖项标记为手动安装,因为这会违背上述目的。

为了找出自动安装某些软件包的原因,您需要使用

aptitude why packagename
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

2298 次

最近记录:

11 年,10 月 前