Как проверить, установлен ли пакет в Debian и Ubuntu 4 мин для чтения

П рочитав эту статью, вы узнаете, как проверить, установлен ли пакет в дистрибутивах Linux на основе Debian, включая Ubuntu.
Проверка установки определенного пакета с помощью dpkg:
Чтобы проверить, установлен ли конкретный пакет в дистрибутивах Linux на основе Debian, вы можете использовать команду dpkg, за которой следует флаг -s (статус) и имя пакета. В приведенной ниже команде показан пример dpkg, используемый для проверки статуса пакета Steam.
dpkg -s steam
Как видите, команда возвращает информацию о пакете, включая следующее:
- Package name: имя пакета.
- Package status: здесь вы можете увидеть статус пакета в вашей системе.
- Priority: существует 5 возможных уровней приоритета для пакетов: приоритет «Required» принадлежит пакетам, которые необходимы для системы; удаление пакетов, помеченных как «Обязательные», может привести к сбою системы. Второй возможный режим приоритета для a — это приоритет «Important» для пакетов, которые не важны для системы, а для пользователя, например, для текстового редактора, такого как nano или net-tools. Третий приоритет — «Standard», который включает пакеты, которые определены для установки по умолчанию. Четвертый уровень приоритета — «Optional», который включает дополнительные пакеты в установках Debian/Ubuntu. Наконец, пятый приоритет — «Extra»., который устарел и заменен на «Необязательный» . Статус « Extra» использовался для специализированных пакетов.
- Section: Пакеты классифицируются по категориям; в настоящее время доступны категории: admin, database, cli-mono, debug, devel, doc, editors, education, gnustep, embedded, fonts, games, gnome, gnu-r, electronics, graphics, interpreters, hamradio, haskell, httpd, python, introspection, javascript, java, ruby, kde, localization, kernel, libdevel, libs, lisp, mail, math, metapackages, ocaml, net, news, misc, comm, oldlibs, otherosfs, perl, php, rust, science, shells, sound, text, video, tasks, tex, utils, vcs, web, x11, xfce, и zope.
- Installed size: вы можете увидеть приблизительное требуемое дисковое пространство в байтах для установки пакета.
- Maintainer: в этом поле отображается информация о разработчике пакета.
- Architecture: здесь вы можете увидеть архитектуру пакета.
- Version: Версия пакета.
- Depends: зависимости пакетов.
- Description: Описание пакета.
- Homepage: Пакет/Сайт разработчика.
Читать Как откатить или понизить версию установленных пакетов в Linux (RHEL/CentOS)
На снимке экрана ниже показан результат проверки пакета, который не установлен.
dpkg -s nexpose
Вы также можете использовать команду dpkg, за которой следует флаг -l, чтобы проверить конкретный статус пакета, как показано в примере ниже.
dpkg -l steam
Проверка, установлен ли конкретный пакет с помощью dpkg-query:
Dpkg-запрос команда может использоваться , чтобы показать , если пакет конкретных установлен в вашей системе. Для этого запустите dpkg-query с указанием флага -l и имени пакета, о котором вы хотите получить информацию. В приведенном ниже примере показано, как проверить, установлен ли пакет Steam.
dpkg-query -l steam
Вы можете использовать ту же команду для вывода списка всех установленных пакетов, опуская имя пакета, как показано в примере ниже.
dpkg-query -l
Проверьте, установлен ли пакет с помощью apt-cache:
Команда apt-cache также может отображать информацию о пакетах, установленных версиях и многом другом. Чтобы получить этот вывод, вам нужно добавить параметр политики, за которым следует имя пакета, как показано в примере ниже.
apt-cache policy steam
Получите список всех установленных пакетов с помощью apt:
Если вы хотите распечатать список всех установленных пакетов в вашей системе, а не проверять, был ли установлен конкретный пакет, вы можете сделать это с помощью команды apt, как показано в примере ниже.
apt --installed list
Получите список всех установленных пакетов чтения логов:
Другой широко используемый метод получения списка всех установленных пакетов — это чтение журналов apt или dpkg.
Чтобы прочитать журнал apt , выполните следующую команду.
cat /var/log/apt/history.log
Чтобы прочитать журнал dpkg и получить информацию об установленных пакетах, выполните команду ниже.
grep " install " /var/log/dpkg.log
Вы также можете читать сжатые журналы dpkg, используя команду zgrep вместо grep, как показано в примере ниже.
zgrep " install " /var/log/dpkg.log.11.gz
Как видите, сжатые журналы предоставят вам частичную информацию, но вы можете реализовать подстановочный знак (*) для одновременного чтения всех сжатых журналов, как показано в следующем примере.
zgrep " install " /var/log/dpkg.log.*.gz
Как проверить обновленные и удаленные пакеты:
Если вы хотите отображать информацию только об обновленных пакетах, вы можете сделать это с помощью приведенной ниже команды.
Читать Как генерировать случайный пароль в оболочке Linux
Как объяснялось ранее, с установленными пакетами вы также можете проверять сжатые журналы на наличие обновленных пакетов с помощью подстановочного знака, как показано в следующем примере.
zgrep "upgrade " /var/log/dpkg.log.*.gz
Если вы хотите перечислить удаленные пакеты, метод аналогичен; просто замените «update» на «remove», как показано ниже.
grep "remove " /var/log/dpkg.log
Вывод:
Как видите, дистрибутивы Linux на основе Debian предлагают различные способы проверки состояния конкретного пакета или перечисления всех установленных, обновленных и удаленных пакетов. Команды, описанные в этой статье, легко применять, и их изучение обязательно для любого пользователя дистрибутива на основе Debian. Как вы видели, эти команды также могут предоставить информацию о версиях программного обеспечения, необходимом дисковом пространстве и многом другом.
Мы надеемся, что эта статья, объясняющее, как проверить, установлен ли пакет в Debian или Ubuntu, было полезно. Следуйте подсказкам Linux, чтобы получить больше советов и руководств по Linux.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Как узнать установлен ли пакет Linux
Иногда бывает очень полезно узнать установлена ли определенная программа на вашем компьютере или ноутбуке. Конечно, можно просто попытаться выполнить программу, но в этом руководстве я расскажу как проверить установлен ли пакет ubuntu с помощью специальных инструментов, встроенных в систему.
Мы рассмотрим способы как для Ubuntu, так и для других популярных дистрибутивов Linux.
Узнать установлен ли пакет в Ubuntu
В Ubuntu для управления пакетами используется утилита dpkg, с помощью нее можно узнать всю информацию об установленных пакетах, в том числе проверить установлен ли пакет Ubuntu. Для этого есть опция -s. Например, если нужно узнать установлен ли пакет firefox, выполните:

Как видите, браузер установлен — installed — ok. Тут можно также узнать версию пакета Ubuntu. То же самое можно сделать с помощью команды dpkg-query:
dpkg-query -l firefox

Утилита dpkg может намного больше. Чтобы посмотреть установленные пакеты Ubuntu выполните команду:

Список может быть очень длинным, в зависимости от количества установленных в системе пакетов. С помощью wc мы можем подсчитать общее количество установленных пакетов:
dpkg —get-selections | wc -l

Также можно отфильтровать только что полученный список с помощью grep чтобы узнать установлен ли пакет или пакеты. Это может быть полезно если вы не знаете полное имя пакета. Например, мы хотим узнать какие пакеты из набора gcc уже установлены:
dpkg —get-selections | grep gcc

Также можно получить все файлы пакета, используя параметр -L:

Но это мы рассматривали более подробно в другой статье. А теперь поговорим о том, как выполняется все выше перечисленное в дистрибутиве на базе rpm.
Проверить установлен ли пакет Linux
В операционных системах на базе менеджера пакетов rpm тоже можно проверить установлен ли пакет. Для этого используется утилита rpm. Просто выполните утилиту с ключом -q:

Если нужна более подробная информация, можно добавить опцию -i. Здесь вы можете узнать версию пакета linux, а также много полезной информации:
rpm -qi chromium

Вывести все установленные пакеты можно с помощью опции -a:

Затем, так же как и в предыдущем примере можно все отфильтровать с помощью grep:
rpm -qa | grep gcc

Выводы
Пока что это все, теперь вы знаете как узнать установлен ли пакет linux в ubuntu и в других популярных дистрибутивах. Надеюсь, моя маленькая инструкция была вам полезной.
Как получить и скопировать список установленных пакетов на Ubuntu / Debian Linux сервере
Приобретая новый виртуальный сервер у RUVDS на Ubuntu / Debian вы можете получить список всех установленных пакетов на вашем виртуальном сервере. Также в данной статье мы рассмотрим, как скопировать и перенести установленные пакеты с одного виртуального сервера на другой.
Чтобы получить список всех установленных пакетов на Ubuntu или Debian, используйте DPKG и другие команды.
Введите следующую команду:
dpkg-query -l

Чтобы увидеть только список пакетов, попробуйте:
dpkg-query -f '$\n' -W

Чтобы получить список установленных пакетов, введите команду:
dpkg --get-selections | grep -v deinstall

apt list --installed
или можно просто найти все пакеты на основе PHP:
apt list --installed | grep php

Как сохранить список в текстовый файл
Команда выглядит следующим образом для server1:
dpkg --get-selections | grep -v deinstall > mylist.txt
Теперь скопируйте mylist.txt на server2 с вашим адресом, например 100.100.100.100:
scp mylist.txt 100.100.100.100:~/
The authenticity of host 100.100.100.100 (100.100.100.100)' can't be established.
ECDSA key fingerprint is SHA256:r+WgiifO
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '100.100.100.100' (ECDSA) to the list of known hosts.
Как установить скопированные пакеты на server2
На втором сервере server2 для восстановления установок из mylist.txt, выполните следующую команду:
dpkg --clear-selections
sudo dpkg --set-selections < mylist.txt
sudo apt-get install -y $(< mylist.txt)
Наконец, выполните следующую команду, чтобы удалить ненужные пакеты:
sudo apt-get autoremove
Вышеприведенные команды должны восстановить пакеты из резервных копий или другого сервера.
Если данных на втором сервере нет, нужно их скопировать и после этого восстановить. Этот вариант заключается в использовании команды aptitude следующим образом:
### Создаем список программ в директории на первом сервере /tmp/packages.txt ###
dpkg --get-selections > /tmp/packages.txt
### Копируем файл на второй сервер с адресом 100.100.100.100 ###
scp /tmp/packages.txt 100.100.100.100:/tmp/
### Теперь вы можете установить пакеты на втором сервере используя команду apt-get/synaptic ###
1. Соединяемся с первым сервером
ssh root@100.100.100.101
2. Устанавливаем aptitude:
sudo aptitude
3. Восстанавливаем данные
aptitude install $(cat /tmp/packages.txt | awk '')
Проверьте с терминала, установлен ли данный пакет в Ubuntu

В следующей статье мы рассмотрим, как мы можем проверить с терминала, установлен ли данный пакет или нет в нашей системе Ubuntu. Иногда пользователям может потребоваться знать эту информацию по тем или иным причинам.
Чтобы получить эту информацию, мы можем найти разные способы ее получения. Немного поискав в Google, можно найти разные способы получения этих данных. Это то, что в какой-то момент всегда может быть полезно для всех пользователей. В этой статье мы оставим семь способов, чтобы каждый пользователь мог выбрать тот, который ему больше всего подходит.
Посмотреть все разделы
Что мы можем использовать из терминала, чтобы проверить, установлен ли данный пакет в Ubuntu или нет?
- кв. Это мощный инструмент командной строки для установки, загрузки, удаления, поиска и управлять пакетами в системах на основе Debian.
- apt-кэш. Привыкший запросить кеш APT или метаданные для пакета.
- Dpkg. Это менеджер пакетов для систем на базе Debian.
- dpkg-запрос. Это инструмент для запросить базу данных dpkg.
- который. Эта команда возвращает полный путь к исполняемому файлу.
- где. Используется для найти двоичный файл, исходный код и файлы справочной страницы для данной команды.
- разместить. Команда определения местоположения работает быстрее, чем команда find потому что он использует базу данных updatedb, а команда find выполняет поиск в реальной системе.
Примеры для проверки, установлен ли пакет
Прежде всего, скажите, что у меня есть следующие команды протестировано на Ubuntu 19.04.
Команда Apt
APT это мощный инструмент для терминала, с помощью которого мы можем устанавливать, загружать, удалять, искать и управлять, а также получить информацию о пакетах. Он также содержит несколько менее используемых утилит командной строки, связанных с управлением пакетами.

apt list vim
Команда apt-cache
Команда APT-кэша используется для запроса кеша APT или метаданных пакета из внутренней базы данных APT. Он будет искать и отображать информацию о данном пакете. Он покажет нам, установлен пакет или нет, версию установленного пакета, информацию об исходном репозитории.
В следующем примере мы увидим, что пакет vim уже установлен в системе.

apt-cache policy vim
Команда dpkg
ДПКГ Это инструмент для установки, создания, удаления и управления пакетами, но в отличие от других систем управления пакетами, не может автоматически загружать и устанавливать пакеты или их зависимости. Чтобы получить информацию, мы можем объединить ее с помощью grep.
![]()
dpkg -l | grep -i nano
Команда dpkg-query
Это инструмент для отображать информацию о пакетах, перечисленных в базе dpkg.
![]()
dpkg-query --list | grep -i nano
Какая команда
Команда which возвращает полный путь к исполняемому файлу. Эта команда очень полезна, когда мы хотим создать ярлык на рабочем столе или символическую ссылку для исполняемых файлов. Команда ищет каталоги, перечисленные в переменной среды. PATH текущий пользователь.
Если после выполнения команды отображается двоичный файл данного пакета или расположение исполняемого файла, это означает, что пакет уже был установлен в системе. В противном случае пакет не установлен в системе.
![]()
which vim
Где команда
Команда где используется для поиска двоичных файлов, исходных файлов и файлов справочной страницы для данной команды.
Если выходные данные команды показывают двоичный файл данного пакета или расположение исполняемого файла, это означает, что пакет уже был установлен в системе. В противном случае пакет не установлен в системе.
![]()
whereis nano
Найдите команду
Команда разместить работает быстрее, чем команда find, потому что использует обновленную базу данных, а команда find выполняет поиск в реальной системе. Используйте базу данных вместо поиска путей к отдельным каталогам.
Если выходные данные команды показывают расположение двоичного или исполняемого файла данного пакета, значит, пакет уже установлен в системе. В противном случае пакет не установлен в системе.

locate --basename '\nano'

Теме статьи:
Список пакетов, установленных разными способами в вашей системе Ubuntu
Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.
Полный путь к статье: Убунлог » Ubuntu » Проверьте с терминала, установлен ли данный пакет в Ubuntu
Будьте первым, чтобы комментировать