两者之间有什么区别吗?
sudo apt-get purge <package-name>
和
sudo apt-get remove <package-name>
?
我经常看到人们推荐其中一种。
换句话说,apt-get purge
删除了什么却apt-get remove
没有删除?
答案1
作为man apt-get
页说:
消除- remove 与 install 相同,只是删除的是软件包而不是安装。请注意,删除软件包将其配置文件留在系统上如果在软件包名称后附加一个加号(中间没有空格),则将安装而不是删除所标识的软件包。
清除- purge 与 remove 相同,只是删除和清除了软件包(任何配置文件也被删除)。
当然,这不适用于在用户主文件夹内保存配置文件的软件包(例如/home/Ubuntu_User
),这些文件将不会被触及(为什么“清除”不会删除与应用程序相关的所有内容?)
例如,如果您使用purge
Chrome、Firefox、Kodi 或任何其他在/home
文件夹中包含一些配置文件的用户,这些配置文件就会保留在那里。
另一方面,如果您安装 Apache、squid、MySQL 或任何其他类似的服务,并将其配置文件保存在 中/etc
,则如果您使用 ,这些配置文件将被删除purge
。
答案2
摘录自我的答案关于另一个问题:
apt-get remove packagename
将删除二进制文件,但不会删除包的配置或数据文件packagename
。apt-get purge packagename
或apt-get remove --purge packagename
将删除约一切关于软件包packagename
,[...]
当你因为搞乱了配置而想要“重新开始”应用程序时特别有用。
答案3
apt-get purge
删除配置文件,同时apt-get remove
才不是。