В этой статье мы собираемся показать вам шаг за шагом инструкцию о том, как получить список всех установленных пакетов с apt на Debian 9 VPS. Команда apt представляет собой простой, но мощный инструмент командной строки, используемый для выполнения таких операций, как установка новых пакетов программного обеспечения, обновление существующих пакетов программного обеспечения, обновление индекса списка пакетов, списка установленных и доступных пакетов и даже обновления цельной системы на основе Debian.
Для того, чтобы вывести список всех установленных пакетов на сервере с Debian 9, установленного на нем, мы можем использовать команду «apt list»:
apt list --installed
Выводом будет длинный список установленных пакетов, чтобы легче было читать, мы используем команду less:
apt list --installed | less
Мы можем выполнить поиск конкретного программного пакета или группы пакетов, установленных на сервере, используя команду grep. Например, чтобы получить список всех PHP пакетов, установленных на сервере, можно использовать следующую команду из командной строки:
apt list --installed | grep -i php
Эта команда выведет список всех пакетов, которые имеют строку PHP в пределах их имени.
isp-php70/now 7.0.21-224-ubuntu16 amd64 [installed,upgradable to: 7.0.24-234-ubuntu16] isp-php70-fpm/now 7.0.21-224-ubuntu16 amd64 [installed,upgradable to: 7.0.24-234-ubuntu16] ispmanager-pkg-php/unstable,unstable,now 5.128.0-1-ubuntu16 all [installed] ispmanager-pkg-phpfpm/unstable,unstable,now 5.128.0-1-ubuntu16 all [installed] libapache2-mod-php/xenial,xenial,now 1:7.0+35ubuntu6 all [installed,automatic] libapache2-mod-php7.0/now 7.0.18-0ubuntu0.16.04.1 amd64 [installed,upgradable to: 7.0.22-0ubuntu0.16.04.1] php-auth/xenial,xenial,now 1.6.4-1build1 all [installed,auto-removable] php-auth-sasl/xenial,xenial,now 1.0.6-2build1 all [installed,auto-removable] php-cgi/xenial,xenial,now 1:7.0+35ubuntu6 all [installed,automatic] php-common/xenial,xenial,now 1:35ubuntu6 all [installed,automatic] php-crypt-chap/xenial,xenial,now 1.5.0-1build1 all [installed,auto-removable] php-db/xenial,xenial,now 1.7.14-3build1 all [installed,auto-removable] php-fpm/xenial,xenial,now 1:7.0+35ubuntu6 all [installed,automatic] php-gd/xenial,xenial,now 1:7.0+35ubuntu6 all [installed,automatic] php-geoip/xenial,now 1.1.0-4 amd64 [installed] ...
Мы можем выполнить поиск конкретного пакета, указав имя пакета или часть имени пакета в качестве аргумента:
apt list sendmail Listing... Done sendmail/stable,now 8.15.2-8 all [installed]
Для того, чтобы просмотреть конкретные установленные детали пакета, используйте команду «apt show«:
root@destroyer:~# apt show php7.0-mysql Package: php7.0-mysql Version: 7.0.22-0ubuntu0.16.04.1 Priority: optional Section: php Source: php7.0 Origin: Ubuntu Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Original-Maintainer: Debian PHP Maintainers <pkg-php-maint@lists.alioth.debian.org> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 485 kB Provides: php-mysqli, php-mysqlnd, php-pdo-mysql, php7.0-mysqli, php7.0-mysqlnd, php7.0-pdo-mysql Depends: php-common (>= 1:33), ucf, php7.0-common (= 7.0.22-0ubuntu0.16.04.1), libc6 (>= 2.15) Homepage: http://www.php.net/ Task: lamp-server, mythbuntu-frontend, mythbuntu-desktop, mythbuntu-backend-slave, mythbuntu-backend-master, mythbuntu-backend-master Supported: 5y Download-Size: 124 kB APT-Sources: http://mirror.yandex.ru/ubuntu xenial-updates/main amd64 Packages Description: MySQL module for PHP This package provides the MySQL module(s) for PHP. . PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. N: There are 2 additional records. Please use the '-a' switch to see them.
Нет необходимости выполнять любую из этих команд от имени пользователя root, поэтому здесь не требуется никаких судо или каких-либо других вариантов.
Чтобы получить список всех установленных вручную пакетов, используйте следующую команду из командной строки:
zcat /var/log/apt/history.log.*.gz | cat - /var/log/apt/history.log | grep -Po '^Commandline: apt-get install (?!.*--reinstall)\K.*'
Чтобы получить список обновляемых пакетов ОС, используйте:
sudo apt-get update apt list upgradeable | less
Чтобы получить список всех доступных версий, используйте следующую команду:
apt list --all-versions | less
Еще одна полезная утилита для перечисления как установленных пакетов и информации о доступных версиях пакета, которая поставляется с Debian на основе дистрибутива Linux является apt-show-versions.
Установка пакета apt-show-versions довольно просто:
sudo apt-get update sudo apt-get install apt-show-versions
Пример:
apt-show-versions dovecot-imapd dovecot-imapd:amd64/stretch 1:2.2.27-3+deb9u1 uptodate If you would like to list all packages with apt on Ubuntu 16.04, please click here.