Введение
В этом руководстве мы объясним, как просматривать и фильтровать пакеты, установленные в Debian. Мы также покажем вам, как проверить, установлен ли конкретный пакет, подсчитать установленные пакеты и узнать версию установленного пакета.
Знание того, как составить список пакетов, установленных в вашей системе на основе Debian, может быть полезно в ситуациях, когда вам нужно установить те же пакеты на другом компьютере или если вы хотите переустановить свою систему.
Список пакетов, установленных с помощью Apt
Apt — это интерфейс командной строки для системы управления пакетами, который сочетает в себе функции, наиболее часто используемые apt-get
а apt-cache
включает опцию для вывода списка установленных пакетов.
Чтобы получить список всех пакетов, установленных в вашей системе, выполните следующую команду:
sudo apt list --installed
Listing... Done
adduser/stable,stable,now 3.118 all [installed]
apt-transport-https/stable,stable,now 1.8.2 all [installed]
apt-utils/stable,stable,now 1.8.2 amd64 [installed]
apt/stable,stable,now 1.8.2 amd64 [installed]
aptitude-common/stable,stable,now 0.8.11-7 all [installed,automatic]
aptitude/stable,stable,now 0.8.11-7 amd64 [installed]
base-files/stable,stable,now 10.3+deb10u3 amd64 [installed]
base-passwd/stable,stable,now 3.5.46 amd64 [installed]
bash-completion/stable,stable,now 1:2.8-6 all [installed]
bash/stable,stable,now 5.0-4 amd64 [installed]
bind9-host/stable,stable,now 1:9.11.5.P4+dfsg-5.1 amd64 [installed]
bsdmainutils/stable,stable,now 11.1.2+b1 amd64 [installed]
bsdutils/stable,stable,now 1:2.33.1-0.1 amd64 [installed]
bzip2/stable,stable,now 1.0.6-9.2~deb10u1 amd64 [installed]
ca-certificates/stable,stable,now 20190110 all [installed,automatic]
cloud-guest-utils/stable,stable,now 0.29-1 all [installed,automatic]
cloud-image-utils/stable,stable,now 0.29-1 all [installed,automatic]
cloud-init/stable,stable,now 18.3-6 all [installed]
cloud-initramfs-growroot/stable,stable,now 0.18.debian7 all [installed]
cloud-utils/stable,stable,now 0.29-1 all [installed]
console-setup-linux/stable,stable,now 1.193~deb10u1 all [installed,automatic]
console-setup/stable,stable,now 1.193~deb10u1 all [installed]
coreutils/stable,stable,now 8.30-3 amd64 [installed]
cpio/stable,stable,now 2.12+dfsg-9 amd64 [installed].....
Команда отобразит список всех установленных пакетов, включая информацию о версии и архитектуре пакета. Крайний правый столбец в выходных данных показывает, был ли пакет автоматически установлен как зависимость от другого пакета.
Поскольку список пакетов длинный, рекомендуется направить вывод на команду less
, чтобы его было легче читать:
sudo apt list --installed | less
Чтобы узнать, установлен ли конкретный пакет, используйте команду grep для фильтрации вывода. Например, чтобы узнать, установлен ли в вашей системе пакет tmux, введите:
sudo apt list --installed | grep tmux
tmux/stable,now 2.3-4 amd64 [installed]
В этом случае в моей системе вывод показывает, что в системе установлен tmux 2.3-4.
Список пакетов, установленных с помощью dpkg-query
dpkg-query
— это командная строка, которую можно использовать для просмотра информации о пакетах, перечисленных в базе данных dpkg.
Чтобы получить список всех установленных пакетов, введите:
sudo dpkg-query -l | less
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/Name Version Architecture Description
+++-==============================-============================-============-===============================================================================
ii adduser 3.118 all add and remove users and groups
ii apt 1.8.2 amd64 commandline package manager
ii apt-transport-https 1.8.2 all transitional package for https support
ii apt-utils 1.8.2 amd64 package management related utility programs
ii aptitude 0.8.11-7 amd64 terminal-based package manager
ii aptitude-common 0.8.11-7 all architecture independent files for the aptitude package manager
ii base-files 10.3+deb10u3 amd64 Debian base system miscellaneous files
ii base-passwd 3.5.46 amd64 Debian base system master password and group files...
Команда отобразит список всех установленных пакетов, включая версии пакетов, архитектуру и краткое описание.
Вы можете отфильтровать вывод dpkg-query -l
с помощью команды grep
:
sudo dpkg-query -l | grep package_name_to_search
Создайте список всех установленных пакетов
Следующая команда сохранит список всех пакетов, установленных в вашей системе Debian, в файле packages_list.txt
:
sudo dpkg-query -f '${binary:Package}\n' -W > packages_list.txt
Теперь, когда у вас есть список, вы можете установить те же пакеты на новый сервер с помощью:
sudo xargs -a packages_list.txt apt install
Подсчитайте количество установленных пакетов
Чтобы узнать, сколько пакетов установлено в вашей системе, вы можете использовать ту же команду, что и при создании списка пакетов, но вместо перенаправления вывода в файл вы можете перенаправить его команде wc
для подсчета строк:
sudo dpkg-query -f '${binary:Package}\n' -W | wc -l
Вывод покажет количество установленных пакетов:
388
Вывод
Из этого руководства вы узнали, как составить список и отфильтровать пакеты, установленные в вашей системе Debian.