На этот вопрос уже есть ответ здесь:
Когда вы устанавливаете программу как и postgresql, он устанавливает несколько программ для своей последней версии.
Как удалить все эти пакеты после установки? поскольку при использовании
apt-get remove postgresql
удаляется только этот головной пакет
Поскольку apt-get autoremove
(предложенный Аароном) удалит все «вспомогательные пакеты», кажется, больше ничего не зависит, иногда вы хотите оставить некоторые из них по тем или иным причинам. Так что, если это касается вас, другой возможностью будет:
$(apt-cache depends postgresql|awk '{print "sudo apt-get remove "$NF}')
Используя Bash в качестве вашей оболочки, это в основном сделает следующее:
apt-cache depends postgresql
выведет список всех пакетов зависит от postgresql, включая сам postgresql. Но каждая строка будет выглядеть как depends on: <package>
- поэтому мы передаем вывод в ... awk '{print "sudo apt-get remove "$NF}'
, который будет брать последнее слово в каждой строке (которое является именем пакета) и печатает его после того, как ему предшествует наша предполагаемая команда: sudo apt-get remove
(вы, конечно, могли бы также использовать apt-get purge
вместо этого) . $()
, мы советуем Bash интерпретировать вывод как команду для выполнения. Вы могли бы альтернативно заменить 3-й шаг и вместо этого перенаправить вывод в файл:
apt-cache depends postgresql|awk '{print "sudo apt-get remove "$NF}' >pg_remove.sh
И затем проверить файл, при необходимости выполнить некоторые корректировки (такие как комментирование / удаление строк, где Вы хотите сохранить пакет) и, наконец, выполнить скрипт, используя
bash pg_remove.sh
Теперь у вас есть много возможностей для выбора:)
РЕДАКТИРОВАТЬ: Проверка с более сложными метапакетами, например, lubuntu-desktop, вышеприведенные операторы должны быть уточнены:
apt-cache depends <packageName>|grep "Depends on"|awk '{print "sudo apt-get remove "$NF}'
grep
необходим, чтобы ограничить результат зависимостями (и пропустить рекомендации и т. д.).
ВАЖНО: Вы должны использовать это только для метапакетов !!! в противном случае вы можете получить пустой диск (например, postgresql-9.1 зависит от libc6, и удаление libc6, безусловно, будет иметь неприятные последствия, если это необходимо). много пакетов).
Так что будьте осторожны, и лучше сначала перенаправить в файл (как объяснено) и исследуйте перед выполнением.
HIt Alt kbd> + Ctrl kbd> + T kbd> и выполните команду
sudo apt-get autoremove
. нужно, что связано с удалением пакета (такого как postgresql), который зависит от них.
Вы всегда можете удалить файлы конфигурации с помощью:
sudo apt-get autoremove --purge
Для дальнейшей очистки используйте следующее:
sudo apt-get install deborphan sudo apt-get autoremove --purge
deborphan
Просто выполните следующие команды:
sudo apt-get install deborphan
sudo apt-get autoremove --purge postgresql
sudo apt-get autoremove --purge `deborphan`