使用sudo apt-get autoremove相比清洁应用程序有什么优势?

我不确定sudo apt-get autoremove具体是做什么的,但我读到过你应该使用这个命令来删除任何不必要的软件包。
我看到的一个步骤是先使用sudo apt-get autoremove,然后再使用类似于BleachBit的工具来删除临时文件等。
你能解释一下sudo apt-get autoremove实际上是做什么的吗?相比于像BleachBit或者Ubuntu Tweak janitor这样的工具单独使用,使用这个命令有什么优势吗?
2个回答

sudo apt-get autoremove

每当您使用apt-get安装应用程序时,系统也会安装该应用程序所依赖的软件。在Ubuntu/Linux中,应用程序共享相同的库是很常见的。当您删除应用程序时,依赖关系将保留在系统中。

因此,apt-get autoremove将删除那些与应用程序一起安装但不再被系统上其他任何东西使用的依赖项。

与Bleachbit或Ubuntu Tweak janitor等工具相比,使用这个命令有什么优势吗?

  • Bleachbit或Ubuntu Tweak janitor是图形界面。
  • sudo apt-get autoremove是一个命令。

使用其中一种选项并不排除另一种选项:我认为BB和UTJ使用sudo apt-get autoremove(以某种方式)来删除依赖项。所以这不是一个“有什么优势”的问题。这是一个偏好的问题:您是喜欢命令行还是图形界面的人?

顺便说一下:deborphan是另一个清理系统的工具。


谢谢你分享这个。根据我的经验,运行sudo apt-get autoremove比使用Bleachbit更安全,我和我的一个朋友在使用Bleachbit后遇到了问题。对我来说,只运行sudo apt-get autoremove似乎更安全。不过,我猜这也取决于你如何配置Bleachbit内部的清理(有很多选项以复选框的形式呈现,用于选择你想要清理的内容)。 - sunyata

一小点补充:自从14.04版本开始,你实际上可以使用apt autoremove命令来删除那些由于其他软件包的依赖而自动安装的软件包,但现在不再作为依赖关系存在的软件包。
这两个命令是等效的:
  • apt autoremove
  • apt-get autoremove

8我来晚了,@matt,但是我相信你应该交互地使用apt,而不是在脚本中使用aptapt-get命令(以及其他apt-*命令)旨在长期保持稳定的行为,而apt则更简单和用户友好,并且将继续发展或以人类喜欢的方式进行更改。具体来说,他们已经表示“[apt的]输出可能会在版本之间更改”,所以如果你关心输出结果,就应该避免在脚本中使用它。 - XP84