why, apt-file, dpkg — несколько полезных советов по работе с пакетами в Debian

Многие пользователи знакомы с известными утилитами по работе с пакетами в Debian — dpkg, aptitude и apt. Они выполняют свое дело и выполняют его хорошо, однако, если вам потребуется выполнить какие-нибудь специфичные действия, а не просто установка/обновление/удаление пакета, то дистрибутив сможет предложить несколько новых полезных и таких же простых в обращении утилит.

Одна из таких утилит имеет название why. Данная программа позволяет узнать для чего предназначен пакет — если вы устанавливаете много пакетов, то можно легко и подзабыть для чего ставился тот или иной package, вот тут why и придет на помощь.
Для того, чтобы узнать зависимость от файла какого-либо пакета, можно набрать команду dpkg -S имя_файла. Например, если набрать dpkg -S /usr/lib/sendmail, то в ответ можно получить postfix: /usr/lib/sendmail.

Утилита apt-file позволит выяснить к какому пакету принадлежит тот или иной файл — apt-file имя_файла. Чем более специфичный файл будет указан, тем более точным будет результат, но даже указав /etc/apache2/apache2.conf система без труда сообщила, что он принадлежит apache2.2-common. Кстати, apt-file не устанавливается по умолчанию и не забудьте перед его работой сделать apt-file update.

Наконец, последняя, но далеко не самая маловажная задача — сохранение списка установленных пакетов. Для быстрой установки всех ваших пакетов можно потратить несколько минут, если заготовить список. Делается это очень просто при помощи команды:
dpkg--get-selections > installed-packages.txt

А установить все пакеты из списка можно командой:
dpkg--set-selections < installed-packages.txt