cv_gordon

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: :: 管理 ::

转自:慎用 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 ,结果删除了一大堆自动安装的文件。下图是被删除文件的列表

 

 

posted on 2019-12-17 15:51  cv_gordon  阅读(6428)  评论(0编辑  收藏  举报