Иногда возникают ситуации, когда нужно узнать какие пакеты установлены в системе. Это может понадобиться если вы хотите сделать резервную копию установленных пакетов, проверить их целостность, перенести все пакеты в другую систему и для решения многих других задач. В Debian для этого можно использовать несколько методов.
В сегодняшней статье мы рассмотрим как посмотреть список установленных пакетов Debian с помощью терминала, в интерфейсе curses, а также в графическом интерфейсе. Такие списки можно использовать не только для резервного копирования, но и для того, чтобы просто перебрать и удалить ненужные программы, тем самым очистив систему от мусора.
Содержание статьи
Список установленных пакетов Debian
Самый первый способ посмотреть установленные пакеты Debian, это утилита dpkg. Она может применяться не только в Debian, а во всех, основанных на нем дистрибутивах:
dpkg --get-selections | grep -v deinstall
Полученный список можно сразу же сохранить в файл, чтобы потом его использовать:
dpkg --get-selections | grep -v deinstall > mylist.txt
Можно также убрать всю лишнюю информацию и сохранить только имена пакетов:
dpkg -l | grep ^ii | awk '{ print $2}' > mylist.txt
Следующий способ решения этой задачи - использование утилиты dpkg-query. Она похожа на предыдущий вариант, но немного проще. Такая команда отобразит все установленные пакеты вместе с информацией о них:
dpkg-query -l
Здесь тоже можно выбрать только имена пакетов с помощью опции -f:
dpkg-query -f '${binary:Package}\n' -W
Третий метод - это утилита apt, которой мы привыкли пользоваться для установки приложений, она имеет команду list:
apt list --installed
Далее, можно отфильтровать только пакеты, имя которых содержит определенные символы:
apt list --installed | grep python
Мы более подробно рассматривали apt в статье установка пакетов в Debian. Еще одна интересная возможность apt - посмотреть какие пакеты были установлены вручную. Для этого наберите:
apt-mark showmanual
И еще один вариант с использованием apt:
apt-cache pkgnames
Утилита для управления пакетами aptitude тоже позволяет вывести список установленных пакетов:
aptitude search '~i!~M'
Также aptitude может работать в режиме curses, что очень удобно:
Последний способ посмотреть список установленных пакетов - это файл /var/lib/apt/extended_states. Это база данных, в которой содержится установленные программы debian в таком формате:
cat /var/lib/apt/extended_states
Восстановление списка установленных пакетов
Многие пользователи создают список пакетов не просто чтобы посмотреть, а для будущего восстановления. Если вы делали список с помощью dpkg, то его можно очень просто восстановить в системе с помощью аналогичной команды:
sudo dpkg --clear-selections
$ sudo dpkg --set-selections < mylist.txt
Все очень просто. Чтобы установить пакеты после добавления их в список используйте команду:
sudo apt dselect-upgrade
Если же у вас просто есть список имен пакетов, то восстанавливать его нужно немного по-другому. Просто передайте все эти имена команде apt для установки:
xargs < mylist.txt apt install -y
Выводы
В этой статье мы рассмотрели как посмотреть список установленных пакетов Debian. Это может быть очень полезно и выполняется достаточно просто. Надеюсь, эта информация была полезной для вас.
На завершение видео про установку и удаление пакетов:
https://www.youtube.com/watch?v=qrPNkhaqi9U
Вместо dpkg-query -l проще dpkg -l
пацаны, вы греп забыли
apt list --installed | python
Спасибо за полезную информацию. Хорошо, если Вы будете почаще писать про Дебиан. С ней часто возникает немало проблем. Помню, как решил с ней познакомиться, после привычных *бунту, установил - а ничего, что было сразу было под рукой в *бунту - не оказалось. даже apt. хоть в той я умело освоился. Дебиан как никак "прародитель" всея *бунту).
можно по другому. Резуультат тот же, но команде более понятна.
---
вместо
dpkg -l | grep ^ii | awk '{ print $2}' > awk-list.txt
---
применить
---
dpkg -l | grep ^ii | cut -f3 -d" "> cut-list.txt
---