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

Управление программами в 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
ИИ Помощник ×