在基于Debian的系统中,我们如何清除已经卸载的软件包的配置文件?


16

更具体地说,我想做等同于将--purge标志添加到以下命令的操作

sudo apt-get autoremove --purge [package name]

到不再在系统上的软件包。

最好是,我想知道如何对特定软件包以及系统中每个未安装的软件包执行此操作。


问题的措词不明确。我假设您的意思是-“如何从已从系统中删除但仍然安装了配置文件的软件包中删除配置文件”。来吧,带来autoremove混乱。
Faheem Mitha 2012年

@FaheemMitha根据您的建议更改了标题。但是我认为,如果我不写其他任何东西,自动删除只会使事情变得混乱。但是句子“我想做的等同于在后面的命令中添加--purge标志”使事情变得很清楚。
亚历山大·马丁斯

Answers:


18

以下应该做您想要的:

aptitude purge \~c

这将清除带有c(状态为删除的软件包,配置文件仍然存在)状态标记的所有软件包。标志文档在这里


对不起,它不工作线1>#须藤性向清洗“-c”线2>资质:无效选项- “C”
亚历山大·马丁斯

3
@AlexandreMartins引号中的第一个字符是波浪号,而不是连字符。
克里斯·

aptitude purge ~c也可以正常工作
Ortomala Lokni,2015年

@OrtomalaLokni不可靠。~[user]是有效的POSIX代字扩展名。
克里斯·

@Chris Down好吧,如果您有一个名为c
Ortomala Lokni


2

--purge标志删除不再安装的软件包的配置文件。我不建议盲目删除所有已卸载软件包的配置文件。您可能要保留其中一些。对于单个包装,dpkg -P将起作用(-P代表--purge)。这里alacarte仅安装了其配置文件,因此带有rc标志。例如

orwell:/home/faheem# dpkg -l alacarte
[...]
rc  alacarte                           0.11.5-1                           easy GNOME menu editing tool
orwell:/home/faheem# dpkg -P alacarte
(Reading database ... 345418 files and directories currently installed.)
Removing alacarte ...
Purging configuration files for alacarte ...
orwell:/home/faheem# dpkg -l alacarte
[...]
un  alacarte                           <none>                             (no description available)

通常,我会将重要配置保留在自己的主文件夹中。这意味着--purge标志对我没有任何问题。它实际上帮助我以后没有任何问题。您是否有充分的理由说我不应该使用--purge丢失的信息?
亚历山大·马丁斯

1
@AlexandreMartins:如果您确定在任何系统配置文件中都没有任何配置,那很好。但对我来说绝对不是这样。
Faheem Mitha 2012年

-1
aptitude --clean-on-startup

那应该清除包缓存。


3
遵循手册页:“在程序启动时清理程序包缓存”。这不是OP所要求的。
enzotib 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.