Назад | Перейти на главную страницу

Как автоматизировать очистку конфигурационных файлов из прошлых пакетов pkgs, как сообщает «dpkg -l | grep ^ rc »

Есть ряд пакетов, которые не были удалены с помощью «apt-get purge», и я хотел бы автоматизировать их очистку.

Ты не можешь apt-get purge apache2.2-common потому что пакет уже удален.

Вы все еще можете перечислить файлы, которые находятся в пакете, с помощью dpkg -L apache2.2-common.

Это означает, что я могу просто удалить список файлов в пакете, но как 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. Используя подоболочку, вы можете сделать это легко:

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

Просто!