Перейти к содержанию

Управление программами в Linux. Установка, обновление и удаление

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

Выбор менеджера зависит от дистрибутива:

Дистрибутив Менеджер пакетов Формат пакетов
Debian, Ubuntu (и производные) apt / apt-get, apt-cache .deb
RHEL, CentOS 7 и ранее, BitrixOS yum .rpm
RHEL 8+, CentOS Stream, Rocky Linux, AlmaLinux dnf (преемник yum) .rpm

Примечание

В современных Ubuntu/Debian предпочтительно использовать apt — это упрощённый и удобный интерфейс, объединяющий функции apt-get и apt-cache.
В новых RPM-системах (dnf) команды аналогичны yum, но быстрее и надёжнее.

Примечание

Большинство команд требуют прав суперпользователя — используйте sudo.

  1. Обновление списка пакетов

    Перед установкой или обновлением всегда обновляйте локальный кэш метаданных:

    Система Команда
    Debian / Ubuntu sudo apt update
    CentOS 7 / BitrixOS sudo yum check-update
    RHEL 8+ / CentOS Stream sudo dnf check-update (или просто sudo dnf upgrade --refresh)

    Примечание

    apt updateapt upgrade!
    update — только обновляет списки,
    upgrade — обновляет установленные пакеты.

  2. Поиск пакетов

    Если не знаете точное название — ищите по ключевым словам:

    Система Команда
    Debian / Ubuntu apt search ключевое_слово
    CentOS / RHEL (yum/dnf) yum search ключевое_слово
    dnf search ключевое_слово

    Пример:

    apt search nginx
    
  3. Просмотр информации о пакете

    Узнайте версию, описание, зависимости и размер до установки:

    Система Команда
    Debian / Ubuntu apt show имя_пакета
    CentOS / RHEL yum info имя_пакета
    dnf info имя_пакета

    Пример:

    apt show curl
    
  4. Установка пакетов

    Базовая установка:

    Debian/Ubuntu

    sudo apt install имя_пакета
    
    CentOS 7 / BitrixOS

    sudo yum install имя_пакета
    

    RHEL 8+, CentOS Stream

    sudo dnf install имя_пакета
    

    Установка нескольких пакетов:

    sudo apt install nginx git htop
    

    Установка конкретной версии:

    Debian/Ubuntu

    sudo apt install nginx=1.18.0-6ubuntu14.4
    

    yum/dnf (указывается через дефис)

    sudo yum install nginx-1.16.1
    sudo dnf install nginx-1.20.1
    
  5. Обновление пакетов

    Обновите все установленные пакеты до последних версий:

    Система Команда
    Debian / Ubuntu sudo apt upgrade
    или sudo apt full-upgrade — для обработки зависимостей с удалением/заменой пакетов
    CentOS 7 / BitrixOS sudo yum update
    RHEL 8+ / CentOS Stream sudo dnf upgrade
  6. Удаление пакетов

    Удалить пакет, сохранив конфигурационные файлы:

    Debian/Ubuntu

    sudo apt remove имя_пакета
    
    yum/dnf

    sudo yum remove имя_пакета
    sudo dnf remove имя_пакета
    

    Полное удаление (включая конфиги):

    sudo apt purge имя_пакета
    

    Автоматическая очистка зависимостей

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

    sudo apt autoremove
    # (для yum/dnf такие пакеты удаляются автоматически при remove/update)
    

    Дополнительно: очистка кэша загруженных пакетов

    sudo apt clean        # удалить ВСЕ .deb-файлы из кэша
    sudo apt autoclean    # удалить ТОЛЬКО устаревшие .deb-файлы
    

Информация

Полезные альтернативы

Задача Команда
Проверить, установлен ли пакет dpkg -l | grep имя (Debian)
rpm -q имя (RPM)
Посмотреть, какие файлы содержит пакет dpkg -L имя
rpm -ql имя
Узнать, какому пакету принадлежит файл dpkg -S /путь/к/файлу
rpm -qf /путь/к/файлу
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×