转自:慎用 apt-get autoremove !
apt-get 提供了一个用于下载和安装软件包的简易命令行界面。
卸载软件包主要有这3个命令
remove – 卸载软件包
autoremove – 卸载所有自动安装且不再使用的软件包
purge – 卸载并清除软件包的配置
apt-get remove的行为我们很好理解,就是删除某个包的同时,删除依赖于它的包
例如: A 依赖于 B, B 依赖于 C
apt-get remove 删除B的同时,将删除A(很好理解,A依赖于B,B被删了,A也就无法正常运行了)
apt-get autoremove的行为重点是卸载所有自动安装
例如:C 依赖于 B, D 依赖于B, 且D没有被其他手动安装的包依赖
apt-get remove C 将删除C, 同时提示你用apt-get autoremove去清除B,D apt-get autoremove C 将删除B, C, D aptitude remove C 将删除B, C, D
我的理解: 删除C, 那么B,D 这两个包既是自动安装的,且没有其他手动安装的包依赖于它们,
则可以判定B,D也是没必要的
apt-get purge的行为卸载并清除软件包的配置,很容易理解
依赖性永远是个噩梦,不要考虑用 apt-get autoremove 卸载自己不熟悉的软件包
apt-get remove卸载的是自己以及自己的下系
apt-get autoremove则是卸载与自己相关而没有被其他手动安装包所依赖的包,
如果你不是对一个包了解的话,有可能一用一下autoremove一下,你的系统就挂了。
个人情况介绍:
本人打算将cmake从3.5升级至3.15。看博客教程先卸载旧版本的cmake,再安装新版本的二进制安装包。
执行命令行: sudo apt-get autoremove cmake ,结果删除了一大堆自动安装的文件。下图是被删除文件的列表。