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

Поиск пакетов в Ubuntu: apt, apt-cache и aptitude

6 min read Ubuntu Обновлено 04 Dec 2025
Поиск пакетов в Ubuntu — apt, apt-cache, aptitude
Поиск пакетов в Ubuntu — apt, apt-cache, aptitude

поиск имён пакетов в Linux

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

Важно: перед поиском пакетов рекомендуется обновить локальные списки пакетов, чтобы результаты отражали актуальное состояние репозиториев.

Подготовка: обновление списков пакетов

Откройте терминал и выполните:

sudo apt update

Эта команда обновляет локальные метаданные о пакетах. Без неё поиск может вернуть устаревшую информацию о версиях или наличии пакета.

Команды apt: быстрый и современный интерфейс

apt — современная обёртка над apt-get и apt-cache. Она удобна для большинства задач: поиск, просмотр и управление пакетами.

Список всех пакетов

apt list

Эта команда выведет много строк: установленные, доступные и заблокированные пакеты.

Чтобы отфильтровать вывод, используйте grep:

apt list | grep <имя_пакета>

список apt

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

apt list --installed

Чтобы узнать, установлена ли конкретная версия пакета или какие версии доступны:

apt list -a <имя_пакета>

Пример: это покажет, какие версии пакета доступны и какие из них установлены.

Пакеты, доступные для обновления

apt list --upgradeable

Если ищете конкретный пакет среди обновляемых:

apt list --upgradeable | grep <имя_пакета>

Поиск по названию и описанию

apt search mysql

Команда просматривает строки названий и описаний пакетов и указывает, установлен пакет или нет. Чтобы ограничить поиск только по имени:

apt search --name-only <имя_пакета>

Подробная информация о пакете

apt show <имя_пакета>

# пример с постраничным просмотром
apt show mysql-client-core-5.7 | less

Вы увидите: точное имя пакета, версию, зависимости, репозиторий и размер скачиваемых данных.

apt show mysql

apt-cache: локальный кэш и быстрый поиск

apt-cache работает с локальными индексами, обновляемыми командой apt update. Он экономит трафик, потому что не обращается к сети при поиске.

Поиск по описанию

apt-cache search apache2

apt-cache поиск apache2

Список имён пакетов, начинающихся с ключевого слова

apt-cache pkgnames <ключевое_слово>

Или вывести все имена пакетов (большой список):

apt-cache pkgnames

Для фильтрации:

apt-cache pkgnames | grep -i <ключевое_слово>

apt-cache pkgnames apache2

Показать зависимости и метаданные пакета

apt-cache showpkg apache2

apt-cache showpkg

apt-cache полезен при анализе зависимостей и когда нужно быстро получить список имён пакетов без сетевых вызовов.

aptitude: интерактивный интерфейс и дополнительные возможности

aptitude сочетает в себе текстовый GUI и командную строку. В интерактивном режиме он напоминает менеджер пакетов с возможностью поиска, пометки для установки/удаления и просмотра информации.

Установка aptitude (если отсутствует)

sudo apt-get update
sudo apt-get install aptitude

Поиск через интерфейс командной строки

sudo aptitude search <имя_пакета>

Запуск текстового GUI

sudo aptitude

В интерфейсе используйте стрелки для навигации. Нажмите / для поиска и Ctrl+T для переключения панелей.

интерфейс aptitude

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

Сравнение инструментов (краткая таблица)

ИнструментПреимуществаКогда использовать
aptСовременный, удобный вывод, комбинирует apt-get и apt-cacheДля повседневных задач — поиск, установка, обновление
apt-cacheБыстрый локальный доступ, полезен для анализа зависимостейПри необходимости офлайн-поиска и диагностики зависимостей
aptitudeИнтерактивный режим, удобен для выбора и разрешения конфликтовКогда нужно вручную управлять набором пакетов и зависимостями

Альтернативные инструменты и варианты

  • dpkg -l — покажет локально установленные пакеты (без репозиториев):
dpkg -l | grep <имя>
  • apt-file — ищет файлы внутри пакетов (полезно, если нужен конкретный файл):
sudo apt install apt-file
sudo apt-file update
apt-file search <имя_файла>
  • snap и flatpak — для пакетов в этих системах используйте:
snap find <имя>
flatpak search <имя>

Если пакет предоставлен не через APT (например, сторонний DEB, PPA, snap или flatpak), стандартный apt/apt-cache может не найти его.

Методика поиска пакета — шаг за шагом (мини-методология)

  1. Обновите списки: sudo apt update.
  2. Быстрый поиск по имени или описанию: apt search <имя>.
  3. Если нашли — уточните: apt show <имя_пакета>.
  4. Если не уверены в файлах пакета — apt-file search <файл>.
  5. Для локальной проверки установленных пакетов: dpkg -l или apt list –installed.
  6. Если нужен интерактивный выбор — sudo aptitude.

Чек-листы по ролям

Для новичка:

  • Обновить: sudo apt update.
  • Выполнить apt search <имя>.
  • Установить: sudo apt install <имя>.

Для администратора:

  • Проверить, какие пакеты требуют обновления: apt list –upgradeable.
  • Проверить зависимости: apt-cache showpkg <имя> или apt-rdepends.
  • При конфликте — использовать aptitude для предложений решения.

Для DevOps/CI:

  • Фиксировать версии в скриптах (apt-get install <пакет>=<версия>).
  • Автоматически обновлять индексы перед сборкой: sudo apt update.
  • Использовать apt-cache/pkgnames для быстрого поиска в скриптах.

Шпаргалка команд (cheat sheet)

  • sudo apt update — обновить индексы.
  • apt list — список пакетов.
  • apt list –installed — только установленные.
  • apt list -a <имя> — все доступные версии.
  • apt list –upgradeable — пакеты для обновления.
  • apt search <имя> — поиск по имени и описанию.
  • apt search –name-only <имя> — поиск только по имени.
  • apt show <имя> — подробности о пакете.
  • apt-cache search <ключ> — поиск в локальном кэше.
  • apt-cache pkgnames <ключ> — имена пакетов по префиксу.
  • apt-cache showpkg <имя> — зависимости и обратные зависимости.
  • aptitude — интерактивный менеджер.
  • dpkg -l | grep <имя> — локально установленные пакеты.
  • apt-file search <файл> — в каком пакете есть файл.

Когда поиск даёт неверные результаты — частые причины

  • Локальные индексы устарели (решение: sudo apt update).
  • Пакет доступен только в PPA или стороннем репозитории (решение: добавить репозиторий).
  • Пакет — snap/flatpak, а не DEB (решение: использовать snap/flatpak команды).
  • Пакет переименован или устарел (проверьте похожие имена через apt search).

Важно: если пакет есть в репозитории, но apt его не показывает — проверьте /etc/apt/sources.list и файлы в /etc/apt/sources.list.d/.

Модель принятия решений (диаграмма)

flowchart TD
  A[Начало: нужно найти пакет] --> B{Известно ли точное имя?}
  B -- Да --> C[apt show <имя>]
  B -- Нет --> D[apt search <ключ> или apt-cache search]
  D --> E{Найдено?}
  E -- Да --> C
  E -- Нет --> F{Проверьте: snap/flatpak/ppa}
  F -- snap --> G[snap find <имя>]
  F -- flatpak --> H[flatpak search <имя>]
  F -- ppa --> I[Добавить PPA и sudo apt update]
  C --> J{Нужно интерактивное решение зависимостей?}
  J -- Да --> K[Запустить sudo aptitude]
  J -- Нет --> L[Установить/обновить пакет]

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

  • Пакет найден в ожидаемом репозитории.
  • apt show / apt-cache showpkg отображают актуальную версию и зависимости.
  • Если задача — установка, пакет устанавливается без конфликтов.
  • Для обновления: пакет отмечен в apt list –upgradeable и обновляется корректно.

Примеры сценариев и возможные решения (edge-cases)

  • Сценарий: apt search не находит пакет, но вы знаете, что он есть в PPA. Решение: добавить PPA (sudo add-apt-repository ppa:…) и выполнить sudo apt update.

  • Сценарий: нужен файл из пакета, но вы не знаете имя пакета. Решение: установить apt-file, выполнить apt-file update, затем apt-file search <имя_файла>.

  • Сценарий: обновление ломает зависимости. Решение: откат, фиксация версии, использование aptitude для поиска альтернатив.

Частые вопросы (FAQ)

Как быстро узнать, установлен ли пакет?

Используйте:

apt list --installed | grep <имя>
# или
dpkg -l | grep <имя>

Чем apt отличается от apt-cache?

apt объединяет функции установки и поиска с удобным выводом. apt-cache работает исключительно с локальными индексами и удобен для быстрой диагностики зависимостей.

Как найти, в каком пакете содержится конкретный файл?

Установите apt-file и выполните:

sudo apt install apt-file
sudo apt-file update
apt-file search <имя_файла>

1‑строчный глоссарий

  • Репозиторий — хранилище пакетов, доступное по URL.
  • PPA — персональный репозиторий для Ubuntu.
  • DEB — формат пакета для Debian/Ubuntu.

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

  • Для большинства задач используйте apt: он прост и демонстрирует достаточную информацию.
  • Для диагностики зависимостей и офлайн-поиска пригодится apt-cache.
  • Если нужен интерактивный контроль — используйте aptitude.
  • Не забывайте обновлять индексы (sudo apt update) перед поиском.

Короткая шпаргалка: sudo apt update → apt search → apt show → sudo apt install.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

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

Добавить несколько аккаунтов в Outlook
Почта

Добавить несколько аккаунтов в Outlook

Офлайн карты Windows 10 — скачать и пользоваться
Инструкции

Офлайн карты Windows 10 — скачать и пользоваться

Резервное копирование DigitalOcean
DevOps

Резервное копирование DigitalOcean

Как переключаться между аккаунтами Google на Android
Android.

Как переключаться между аккаунтами Google на Android

Отключение и настройка автообновлений Ubuntu
Администрирование

Отключение и настройка автообновлений Ubuntu

Как освободить место в Windows — удалить накопившиеся остатки
Windows

Как освободить место в Windows — удалить накопившиеся остатки