关于apt-get remove 与 apt-get purge

在Ubuntu系统中,apt-get remove与apt-get purge在卸载软件时有所不同。remove仅卸载软件包但保留配置文件,而purge则同时清除软件包和配置文件。若仅使用remove并手动删除配置文件,再尝试重新安装同一软件,可能会因dpkg状态记录不更新导致安装失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于apt-get remove 与 apt-get purge
今天在Ubuntu服务器上安装supervisor,部署没成功想卸载重来,sudo apt-get remove supervisor 后发现配置文件还在,便手动删除了配置文件。再次安装,提示配置文件不存在,WTF!配置文件不该你软件给我创建吗?我想。

查阅资料才知,还有 apt-get purge 这一选项,purge 清除。

划重点:
apt-get remove 会删除软件包而保留软件的配置文件
apt-get purge 会同时清除软件包和软件的配置文件

但是为什么重新安装会失败呢?
系统中存在dpkg这么一个工具,会记录软件包的状态,不只是安装和未安装两种状态,会记录以下这些状态:

    not-installed - The package is not installed on this system
    config-files - Only the configuration files are deployed to this system
    half-installed - The installation of the package has been started, but not completed
    unpacked - The package is unpacked, but not configured
    half-configured - The package is unpacked and configuration has started but not completed
    triggers-awaited - The package awaits trigger processing by another package
    triggers-pending - The package has been triggered
    installed - The packaged is unpacked and configured OK

当执行apt-get install时,apt软件包管理工具会先检查要安装的软件的状态,向我这种情况下,手动删除了软件配置后,并不会引起dpkg中记录的状态的改变,即仍为 config-files 状态,所以安装过程会直接跳过创建配置文件这一过程。于是当软件想要启动进程的时候,才发现找不到文件。

所以当你想彻底地删除软件包的时候,用 apt-get purge 吧

原文:http://bencane.com/2014/08/18/removing-packages-and-configurations-with-apt-get/
————————————————
版权声明:本文为CSDN博主「奥林匹克竞赛」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/digitalkee/article/details/104253791

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

发狂的蜗牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值