Удалить остатки ранее удаленных пакетов в Ubuntu/Debian/Mint/Deepin

Когда мы делаем apt remove, то пакет удаляется, но не удаляются его конфиги (сборщик пакета указывает, какие файлы являются конфигами; речь о входящих в пакет конфигах, то есть содержимое домашней папки пользователя не затрагивается). apt purge удаляет и сам пакет, и конфиги и прочие его куски.

apt autoremove удаляет указанный пакет и пакеты-сироты, т.е. те пакеты, которые ранее были установлены автоматически как зависимости, теперь пакет, от них зависящий, уже удален, и эти пакеты больше никому не нужны. apt autoremove --purge делает все то же, что и autoremove, но еще и подчищает остатки пакета, как apt purge. Можно запустить просто apt autoremove или apt autoremove --purge, чтобы подчистить пакеты-сироты, а можно в конец этой команды дописать список пакетов, которые нужно удалить, тогда apt удалит их и подчистит все сироты в системе.

dpkg -l — в выводе этой команды ii в первом столбце означает, что пакет установлен, а rc означает, что он удален, но остались следы.
Давайте удалим следы всех ранее удаленных пакетов:
sudo apt autoremove --purge $(dpkg -l | grep ^rc | grep -v ^ii | awk '{print $2}' | tr '\n' ' ')

Вы можете поэкспериментировать и посмотреть, какой список пакетов выдаст команда, результат которой подставляется в предыдущую:
dpkg -l | grep ^rc | grep -v ^ii | awk '{print $2}' | tr '\n' ' '

Отправить ответ

avatar
  Subscribe  
Сообщать по почте