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

Пакетные менеджеры

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

У каждого семейства дистрибутивов — свой пакетный менеджер. Команды разные, суть одна.

Пакетный менеджер Дистрибутивы Формат пакетов
pacman + paru Arch, Manjaro, EndeavourOS .pkg.tar.zst
apt Ubuntu, Debian, Linux Mint, Pop!_OS .deb
dnf Fedora, RHEL 9+, CentOS Stream .rpm

Как понять, какой у тебя?

Просто попробуй запустить любой из них — тот, что не скажет command not found, и есть твой.


Arch Linux — pacman + paru

pacman

Быстрый, минималистичный, с криптичными флагами. Привыкнуть сложно, но потом не оторваться.

Флаг Значение
-S Sync — установить из репозитория
-R Remove — удалить
-Q Query — запросить инфо о локальном пакете
-Syu Sync + refresh + upgrade — полное обновление
-Rns Remove + nosave + recursive — удалить начисто
-Ss Sync + search — поиск в репозитории
1
2
3
4
5
6
sudo pacman -S firefox                   # Установить пакет
sudo pacman -Rns firefox                 # Удалить пакет вместе с зависимостями и конфигами
sudo pacman -Syu                         # Обновить ВСЮ систему
pacman -Ss название                      # Поиск пакета в репозитории
pacman -Qi firefox                       # Инфо об установленном пакете
pacman -Q                                # Список всех установленных пакетов
1
2
3
sudo pacman -S --needed base-devel git   # Установить, но пропустить уже имеющиеся
pacman -Qdt                              # Найти «осиротевшие» пакеты (зависимости без родителя)
sudo pacman -Rns $(pacman -Qdtq)         # Удалить их все разом

Всегда обновляй перед установкой

Если не сделать pacman -Syu перед установкой нового пакета, можно словить конфликт версий.

AUR и paru

В официальном репозитории Arch есть не всё. Например, там нет Google Chrome, Spotify или Telegram Desktop. Всё, чего нет в официалке, лежит в AUR (Arch User Repository) — огромном репозитории, который ведут сами пользователи.

Проблема в том, что pacman не умеет работать с AUR напрямую. Для этого нужен AUR-хелпер — обёртка, которая умеет и в официальные репозитории, и в AUR одновременно.

paru — самый популярный AUR-хелпер на сегодня. Написан на Rust, работает быстро, синтаксис — как у pacman.

Установка paru (делается один раз):

1
2
3
4
5
sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si
cd .. && rm -rf paru

Использование:

1
2
3
4
paru -S google-chrome           # Установить пакет из AUR
paru -Ss telegram               # Поиск по AUR + официальным репозиториям
paru -Rns google-chrome         # Удалить пакет
paru                            # Обновить ВСЁ: и системные пакеты, и AUR

sudo не нужен

paru сам запросит пароль когда потребуется. Не пиши sudo paru — это неправильно и может сломать права на файлы.

AUR — это не официальный репозиторий

Пакеты в AUR пишут обычные пользователи. Перед установкой paru покажет тебе PKGBUILD — скрипт сборки. Бегло просматривай его, особенно если пакет незнакомый. Это вопрос безопасности.


Ubuntu / Debian — apt

Самый популярный. Если гуглишь «как установить X в Linux» — в 80% случаев увидишь команду с apt.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
sudo apt update                 # Обновить список доступных пакетов
sudo apt upgrade                # Обновить установленные пакеты
sudo apt install firefox        # Установить пакет
sudo apt remove firefox         # Удалить пакет
sudo apt purge firefox          # Удалить пакет + его конфиги
sudo apt autoremove             # Удалить ненужные зависимости
apt search название             # Поиск пакета
apt show firefox                # Инфо о пакете
apt list --installed            # Список установленных
apt list --upgradable           # Посмотреть что можно обновить

Два шага для обновления

В отличие от Arch, тут обновление — это всегда два шага: сначала apt update (скачать свежий список пакетов), потом apt upgrade (обновить сами пакеты). Без первого шага система не узнает о новых версиях.

apt vs apt-get

apt — это современная обёртка над apt-get. Для повседневного использования бери apt — у него прогресс-бар и человеческий вывод. apt-get оставь для скриптов.


Fedora — dnf

Пришёл на замену yum. Быстрый, с понятным синтаксисом и автоматическим разрешением конфликтов.

1
2
3
4
5
6
7
8
9
sudo dnf install firefox        # Установить
sudo dnf remove firefox         # Удалить
sudo dnf upgrade                # Обновить всё
sudo dnf autoremove             # Убрать ненужные зависимости
dnf search название             # Поиск пакета
dnf info firefox                # Инфо о пакете
dnf list installed              # Список установленных
sudo dnf history                # История всех операций
sudo dnf history undo last      # Откатить последнюю операцию

Откат — суперсила dnf

Команда dnf history undo может откатить любую операцию — установку, обновление, удаление. Полезно, когда обновление что-то сломало.


Универсальные менеджеры

Помимо «родных» менеджеров есть универсальные — работают на любом дистрибутиве.

Менеджер Формат Особенность
Flatpak .flatpak Изолированные приложения, большой выбор на Flathub
Snap .snap Разработка Canonical, автообновления
AppImage .AppImage Один файл = одно приложение, установка не нужна
1
2
3
4
5
6
7
8
9
# Flatpak
flatpak install flathub com.spotify.Client
flatpak update
flatpak uninstall com.spotify.Client

# Snap
sudo snap install code --classic
sudo snap refresh
sudo snap remove code

Когда использовать?

Универсальные менеджеры удобны, когда нужного пакета нет в системном репозитории или нужна изолированная версия приложения. Но они занимают больше места и могут запускаться медленнее.

Не мешай менеджеры!

Не ставь .deb-пакеты на Arch или .rpm на Ubuntu. Это путь к сломанной системе. Используй только свой родной менеджер или универсальные (Flatpak, Snap, AppImage).