上次我使用时sudo apt-get autoremove
,几乎所有重要的显示驱动程序或部件都被删除了。这让我非常不愿意再次使用该命令。但是,每次我安装某些东西或使用apt-get update
终端时,都会显示:
The following packages were automatically installed and are no longer required:
devilspie libturbojpeg:i386 libxrandr-ltsr2 language-pack-kde-en
kde-l10n-engb language-pack-kde-en-base libxv1:i386 libllvm3.2
libllvm3.2:i386 linux-generic-lts-raring
Use 'apt-get autoremove' to remove them.
我尝试了该命令clean
,但消息暂时停止显示。我的问题是运行该autoremove
命令是否安全,还是我会再次失去一切?有没有办法检查autoremove
在这种特殊情况下(或任何情况下)使用它的安全性?
答案1
回顾一下你过去的经历,如果autoremove
你要删除“超出你预期的内容”,那只是因为不再依赖这些包。当你不小心删除某些东西时就会发生这种情况 :)
一个常见的例子是删除一些与 Compiz 相关的东西。apt-get
会显示将要删除的 Compiz 软件包列表,而您会错过ubuntu-desktop
其中的内容。ubuntu-desktop
只是一个依赖于组成桌面的所有软件包的元包,因此删除它不会直接删除任何东西……
...但是当你做后续的事情时autoremove
,所有那些ubuntu-desktop
唯一依赖的东西...它们都会消失。
一些教训:
sudo apt-get remove <package>
会直接警告您要删除的内容。它不会通知您有关连锁反应的信息。sudo apt-get autoremove
还应该警告你它将要做什么。- 如果您不确定,请使用
apt-get -s autoremove
模拟试运行。您可以在所有apt-get
命令上使用它。 - 如果你重新启动并且盯着 TTY1,想知道这次你摧毁了哪些猴子,
/var/log/apt/history.log
应该会显示你最近的活动。 - 如果有疑问,请检查
ubuntu-desktop
是否已安装。
是autoremove
安全的?这是重型机械,因此其安全性完全取决于驾驶员……但话虽如此,它很难造成永久性损坏。
答案2
以下软件包已自动安装,并且不再需要
如果不再需要它们,apt 会在构建依赖项时知道。apt-get 只会通知您“嘿,您删除了安装这些软件包的某些内容。我更希望您自己决定如何处理它们,因为你是老板“。
现在安全了吗?是的。如果您再次需要它们怎么办?apt 将下载它们。我应该检查列表吗?是的。可能需要进行简单检查。
答案3
不安全的示例:
apt-get remove --purge icedove*
永远不要、几乎永远不要使用星号,除了 libreoffice
能力越大,责任越大。通常,您应该使用 synaptic 包管理器,它比终端提供更好的显示效果(警告**)。
例如,在 Debian Jessie (8.2) 上,我注意到 imagemagick 无法运行,并且在默认安装的菜单中有 2 个快捷方式。我开始使用:
apt-get remove --purge imagemagick
这样就删除了一个快捷方式,然后我启动了 synaptic,剩下两个包,其中一个是 imagemagick-common。选择该包进行完全删除后,结果显示 inkscape 是第一个需要删除的东西,还有许多其他东西。
现在在终端中执行相同的操作,它不会像以前那样跳动。除非您是 Linux 老手,否则您可能根本不会感到困扰。