软件包“设置为手动安装”是什么意思?


76

当已经安装了软件包并且运行了时apt-get install <package-name>,有时它将打印一行<package-name> is set to manually installed

这意味着什么?

Answers:


83

如果安装软件包,则还将安装该软件包所依赖的所有软件包。例如,如果您安装软件包vlc,它将自动安装vlc-nox。自动安装的软件包(在本例中为vlc-nox)设置为“自动安装”-如果删除vlc,则软件包管理器将建议也删除vlc-nox(如果使用apt,aptitude会自动执行此操作) -get可以使用删除所有自动安装的软件包apt-get autoremove

现在,如果您这样做,apt-get install vlc-nox您将收到消息,vlc-nox现在被设置为“手动安装”,即,程序包管理器现在认为您要专门安装该程序包,而不仅仅是因为vlc需要它而安装了它。如果删除vlc,则不会自动删除vlc-nox。

这不会以任何方式影响更新。


1
啊啊 这是很合理的。非常感谢!
chrismar035,2010年

还有其他安装这些软件包的方法吗?我必须安装一些软件包才能解决unmet dependencies问题。
SY_13 2016年

1
对于未满足的依赖关系,您可以始终使用apt-get install -f-它会安装所有缺少的,未满足的依赖关系。
nerdoc '16

88

sudo apt-mark auto $PACKAGES如果不小心将软件包标记为手动安装,则可以将其标记为再次自动安装。

可以使用apt-get autoremove(或使用类似的过程,例如通过Synaptic)删除自动安装的软件包。


2
这是我一直在寻找的,应该包含在接受的答案中。谢谢。
David Tabernero M.


6

这意味着一个软件包是手动选择的,而不是由另一个软件包或元软件包自动选择的。区别在于,当不再存在触发此安装的软件包时(升级之后或由于已将其删除),后者可以自动删除。手动选择的程序包不应以这种方式删除。

当此类升级可用或其通知时,这对升级软件包的能力没有影响。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.