Гид по технологиям

Как просмотреть установленные пакеты в Linux

7 min read Linux Обновлено 26 Dec 2025
Как просмотреть установленные пакеты в Linux
Как просмотреть установленные пакеты в Linux

Кратко: узнайте, какие пакеты установлены в вашей системе, с помощью встроенных менеджеров пакетов (APT, DPKG, YUM/DNF, RPM, Pacman, Zypper) и универсальных форматов (Snap, Flatpak). Сохраняйте списки в файл для миграции или восстановления. В статье — команды для всех популярных дистрибутивов, шаблоны экспорта/восстановления, чек-листы и рекомендации по часто встречающимся проблемам.

человек составляет список установленных пакетов Linux

Перед установкой новой программы полезно убедиться, что она ещё не установлена. Если вы переносите конфигурацию на новый хост, список всех пакетов существенно сэкономит время. Также такой список помогает найти пакеты, которые можно удалить, чтобы освободить место.

Ниже приведены команды для получения списков установленных пакетов в популярных дистрибутивах: Debian/Ubuntu, RHEL/CentOS/Fedora, Arch Linux, openSUSE, а также для универсальных форматов пакетов Snap и Flatpak.

Основная мысль и подходы

Понимание разницы между менеджерами пакетов и универсальными форматами помогает выбрать правильный инструмент:

  • Менеджеры дистрибутива (APT, DNF/YUM, Pacman, Zypper) управляют пакетами из репозиториев и зависимостями.
  • Утилиты низкого уровня (dpkg, rpm) работают с локальными пакетами и метаданными.
  • Snap и Flatpak — универсальные контейнированные пакеты, не всегда видимые менеджеру пакетов дистрибутива.

Принцип: сначала получаем список, затем при необходимости фильтруем, сохраняем и переносим. Для восстановления обычно требуется нормализовать имена пакетов (без версий) и убедиться, что те же репозитории доступны на новом хосте.

Важно: команды нужно выполнять с правами пользователя, указанным в примере (часто sudo). Некоторые команды показывают полные имена пакетов с версиями, другие — только имена.

Просмотр установленных пакетов на Ubuntu / Debian

APT и DPKG — стандартный набор для Debian-подобных систем. Они позволяют просматривать, устанавливать, обновлять и удалять пакеты.

  • Показать все пакеты, видимые APT:
apt list --installed

список пакетов apt list --installed

Метки в выводе APT:

  • [installed] — пакет установлен из официального репозитория.
  • [installed,automatic] — пакет установлен автоматически как зависимость.
  • [installed,local] — пакет установлен локально с помощью dpkg -i.

Поиск в списке APT:

apt list --installed | grep program_name

DPKG — низкоуровневый инструмент, показывает больше информации о локальных пакетах:

dpkg -l

Чтобы вывести только имена пакетов:

dpkg -l | awk '{print $2}'

Экспорт списка установленных пакетов (полезно для миграции):

dpkg --get-selections > packages.dpkg

Восстановление на новом хосте (после переноса файла packages.dpkg):

dpkg --set-selections < packages.dpkg
n
apt-get -u dselect-upgrade

Дополнительно: чтобы получить только вручную установленные пакеты (без зависимостей), используйте:

apt-mark showmanual > manual-packages.txt

Примечание: dpkg –get-selections сохраняет полные селекции, но репозитории и доступность пакетов на новом хосте должны совпадать.

Просмотр установленных пакетов на RHEL/CentOS/Fedora

В RHEL-подобных системах используют DNF или YUM поверх RPM. Некоторые старые системы всё ещё используют yum, в новых чаще dnf.

Показать установленные пакеты с YUM:

yum list installed

С DNF:

dnf list installed

Низкоуровневый RPM-вызов отображает все установленные RPM:

rpm -qa

Показать недавно установленные пакеты (последние вверху):

rpm -qa --last

Вывести в обратном порядке (старые вверху):

rpm -qa --last | tac

Экспорт списка RPM:

rpm -qa > rpm-list.txt

Особенности восстановления: rpm -qa выдаёт пакеты с версиями и релизами (например, name-1.2.3-1.el8.x86_64). Для установки по списку обычно нужно извлечь базовые имена без версий или использовать репозитории для установки соответствующих пакетов. Восстановление часто требует обработки списка перед подачей в dnf/yum.

Совет: для автоматической установки пакетов без версий можно попытаться извлечь имена и передать в dnf:

cat rpm-list.txt | sed -E 's/-[0-9]+.*$//' | sort -u > rpm-names.txt
sudo dnf install -y $(cat rpm-names.txt)

Однако такой подход может дать нежелательные результаты, если имена пакетов не уникальны или в репозиториях отсутствуют нужные версии.

Просмотр установленных пакетов на Arch Linux (Pacman)

Pacman — менеджер пакетов по умолчанию для Arch, Manjaro, EndeavourOS.

Показать все установленные пакеты:

pacman -Q

Показать только явно установленные пользователем пакеты:

pacman -Qe

Показать «foreign» пакеты (установленные вручную из AUR или внешних репозиториев):

pacman -Qm

Найти пакет по имени:

pacman -Q | grep 

Экспорт списка для миграции (только явные пакеты):

pacman -Qqe > pkglist.txt

Восстановление на новом хосте:

pacman -S --needed - < pkglist.txt

Этот способ удобен: pacman корректно устанавливает пакеты из репозиториев и игнорирует уже установленные (–needed).

список pacman

Просмотр установленных пакетов на openSUSE (Zypper)

Zypper — CLI-менеджер пакетов в openSUSE.

Показать только установленные пакеты:

zypper search --installed-only

Короткая форма:

zypper se -i

Проверить наличие конкретного пакета:

zypper se -i 

Вывести информацию о пакете:

zypper info 

Экспорт и восстановление: zypper также позволяет установить пакеты по списку, но формат вывода может требовать предобработки имен пакетов перед установкой. Частый шаблон экспорта:

zypper se -i | awk '{print $NF}' > zypper-list.txt
sudo xargs -a zypper-list.txt -r zypper install -y

список zypper

Просмотр установленных пакетов Snap

Snap — универсальный менеджер пакетов, доступный во многих дистрибутивах. Snap пакеты содержат зависимости и запускаются контейнировано.

Показать установленные snap-пакеты:

snap list

список snap

Вывод включает имя пакета, версию, ревизию, канал и издателя. Snap-пакеты не отображаются в apt/dnf/pacman, поэтому при миграции их нужно экспортировать отдельно:

snap list --all > snap-list.txt

Для повторной установки на новом хосте можно использовать цикл по именам из snap-list.txt и выполнять snap install –channel= при необходимости.

Просмотр установленных Flatpak пакетов

Flatpak похож по смыслу на Snap: приложения и рантаймы поставляются отдельно и не зависят от системного менеджера пакетов.

Показать все Flatpak пакеты и рантаймы:

flatpak list

Показать только приложения:

flatpak list --app

Показать только рантаймы:

flatpak list --runtime

Вывести только имена приложений:

flatpak --columns=name list > flatpak-apps.txt

Вернуть детальную информацию о конкретном пакете:

flatpak info 

Сохранение списка установленных пакетов в файл

Общая практика — перенаправлять вывод в файл для последующего анализа или для передачи на другой хост:

apt list --installed > installed_apt.txt
pacman -Qqe > installed_pacman.txt
rpm -qa > installed_rpm.txt
snap list > installed_snap.txt
flatpak --columns=name list > installed_flatpak.txt

Важно: храните такие списки вместе с информацией о репозиториях и версиях ОС, иначе восстановление может оказаться затруднено.

Подсчёт числа установленных пакетов

Классический unix-паттерн — подсчитать строки в выводе через wc -l:

zypper search --installed-only | wc -l
apt list --installed | wc -l
pacman -Q | wc -l

Учтите, что разные команды выводят заголовки и дополнительные строки. Для точного подсчёта используйте фильтрацию и подсчёт уникальных имён.

Практические шаблоны и сценарии (шпаргалка)

Шаблоны помогут быстро экспортировать/восстановить пакеты для популярных задач.

  1. Полный экспорт APT и ручное восстановление:
# На старом хосте
sudo dpkg --get-selections > packages.dpkg
sudo apt-mark showmanual > manual-packages.txt
# Скопировать файлы на новый хост и выполнить
sudo dpkg --set-selections < packages.dpkg
sudo apt-get -u dselect-upgrade
# Затем установить вручную выбранные пакеты
sudo xargs -a manual-packages.txt apt-get install -y
  1. Arch — экспорт и восстановление явных пакетов:
# Экспорт
pacman -Qqe > pkglist.txt
# Восстановление на новом хосте
sudo pacman -S --needed - < pkglist.txt
  1. Простая миграция Flatpak:
flatpak --columns=name list --app > flatpak-apps.txt
# На новом хосте
while read app; do
  flatpak install flathub $app -y
done < flatpak-apps.txt
  1. Snap: сохранить имена и каналы, затем установить по списку:
snap list --all | awk '{print $1" "$(NF)}' > snap-list.txt
# формат можно парсить, затем snap install  --channel=

Замечание: форматы вывода могут меняться между версиями инструментов. Перед массовой установкой проверьте 5-10 пакетов вручную.

Роли и чек-листы

Системный администратор:

  • Собрать список всех пакетов и сохранить репозиторные конфиги.
  • Экспортировать списки сервисов и unit-файлов systemd.
  • Проверить установки пакетов, которые были установлены вручную.
  • Сохранить локальные .deb/.rpm пакеты отдельно.

Разработчик/рабочая станция:

  • Экспортировать только явно установленные пользовательом приложения.
  • Собрать список глобально установленных инструментов разработки и версий (python, node, gcc).
  • Проверить контейнеризированные приложения и менеджеры пакетов в них.

Модель принятия решения — когда какой инструмент использовать

flowchart TD
  A[Нужен список установленных пакетов?] --> B{Тип системы}
  B --> |Debian/Ubuntu| C[apt/dpkg]
  B --> |RHEL/CentOS/Fedora| D[dnf/yum/rpm]
  B --> |Arch| E[pacman]
  B --> |openSUSE| F[zypper]
  B --> |Универсальные| G{Snap/Flatpak}
  G --> |Snap| H[snap list]
  G --> |Flatpak| I[flatpak list]
  C --> J[Экспортировать и сохранить репозитории]
  D --> J
  E --> J
  F --> J

Частые ошибки и как их избежать

  • Неполный список при использовании snap/flatpak вместе с системным менеджером — сохраняйте оба списка.
  • Попытка восстановить пакеты с точными версиями, которые недоступны в новых репозиториях — лучше установить актуальные версии из репозиториев и сохранить конфиги отдельных пакетов.
  • Неправильный формат при передаче списка RPM-пакетов — rpm -qa выдаёт версии; при установке по именам версии нужно удалить.
  • Права доступа: многие команды требуют sudo, иначе вывод может быть неполным.

Важно: перед массовой установкой пакетов на продуктивном сервере сначала протестируйте процесс на тестовой машине.

Критерии приёмки

  • Список успешно экспортирован для текущей машины (файл существует и не пустой).
  • При восстановлении пакетный менеджер корректно устанавливает ключевые приложения без ошибок зависимостей.
  • Репозитории и источники пакетов задокументированы и доступны на новом хосте.

Краткая словарная памятка (1 строка каждая)

  • Пакет: готовый набор программ, библиотек и метаданных для установки.
  • Репозиторий: источник пакетов для менеджера.
  • Депенденси: зависимость, необходимая пакету.
  • Рантайм: рантайм-пакет в Flatpak, набор зависимостей для приложений.
  • Snap: контейнированный пакет с зависимостями.
  • RPM/DEB: форматы пакетов для соответствующих менеджеров.

Советы по безопасности и приватности

  • Экспорт списков пакетов не копирует приватные ключи или данные конфигурации. Отдельно сохраните конфигурационные файлы и секреты.
  • При миграции проверьте доступность приватных репозиториев и учетных данных к ним.

Итог и рекомендации

  • Всегда сохраняйте списки пакетов и конфигурации перед крупными изменениями.
  • Для восстановления используйте формат и инструмент, соответствующий дистрибутиву. Для независимых приложений — список snap/flatpak отдельно.
  • Тестируйте миграцию на контролируемой машине.

Важно: список пакетов — только часть полной миграции. Для полноты сохраняйте файлы конфигураций, данные и репозитории.

Краткое резюме ниже.

Summary:

  • Получите список пакетов соответствующим инструментом (apt, dpkg, dnf, rpm, pacman, zypper, snap, flatpak).
  • Сохраните список в файл и задокументируйте репозитории.
  • Перед восстановлением отфильтруйте имена и протестируйте установку.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Двойная экспозиция в Photoshop — пошагово
Фотография

Двойная экспозиция в Photoshop — пошагово

Записать голосовое сопровождение в PowerPoint
Руководство

Записать голосовое сопровождение в PowerPoint

Добавить карту в Google Wallet через фото
Мобильные платежи

Добавить карту в Google Wallet через фото

Рутины Google Home: автоматизация дома
Умный дом

Рутины Google Home: автоматизация дома

Загрузочная USB с Windows 10 на Mac — пошагово
Инструкции

Загрузочная USB с Windows 10 на Mac — пошагово

Навсегда включить режим энергосбережения на iPhone
iPhone

Навсегда включить режим энергосбережения на iPhone