Ubuntu

如何從“dpkg -l | grep ^rc”報告的過去 pkgs 中自動清理配置文件

  • May 17, 2014

有許多 pkg 沒有被“apt-get purge”刪除,我想自動清理它們。

你不能apt-get purge apache2.2-common因為 pkg 已經被刪除了。

您仍然可以列出 pkg 中的文件dpkg -L apache2.2-common

這意味著我可以刪除 pkg 中的文件列表,但是 dpkg 怎麼知道呢?如何刪除遺留的配置文件並將其從以下報告中刪除?

範例輸出:

$ dpkg -l | grep ^rc
rc  apache2.2-common                  2.2.14-5ubuntu8.10                Apache HTTP Server common files
rc  libapache2-mod-php5filter         5.3.10-1ubuntu2ppa6~lucid         server-side, HTML-embedded scripting languag
rc  libapr1                           1.3.8-1ubuntu0.3                  The Apache Portable Runtime Library
rc  libaprutil1                       1.3.9+dfsg-3ubuntu0.10.04.1       The Apache Portable Runtime Utility Library
rc  libgd2-xpm                        2.0.36~rc1~dfsg-3.1ubuntu1        GD Graphics Library version 2
rc  libt1-5                           5.1.2-3ubuntu0.10.04.2            Type 1 font rasterizer library - runtime
rc  php5-gd                           5.3.10-1ubuntu2ppa6~lucid         GD module for php5
rc  ssl-cert                          1.0.23ubuntu2                     simple debconf wrapper for OpenSSL

像這樣的東西會找到包名:

dpkg --list | grep ^rc | awk '{print $2}'

或者要刪除可以使用的管道數量:

dpkg --list | awk '/^rc/ {print $2}'

因此,下一步是將其中一個列表輸入dpkg --purge. 使用子shell,您可以輕鬆地做到這一點:

dpkg --purge $(dpkg --list | grep ^rc | awk '{print $2}')

簡單的!

引用自:https://serverfault.com/questions/589487