Под пакетными менеджерами подразумеваются специальные приложения, которые служат для управления программами. Это относится как к уже установленному в системе программному обеспечению, так и к тому, которое может быть получено из репозиториев.

Почему системы управления программным обеспечением в unix-подобных ОС именуются именно "пакетными"? Дело в том, что программные продукты для Linux обычно распространяются в виде архивов, содержащих множество файлов, а не как единый исполняемый файл, как это характерно для Windows. Эти архивы, содержащие файлы программы, метаданные и дополнительные файлы, называются пакетами.

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

В мире Linux существует множество пакетных менеджеров, и их популярность варьируется в зависимости от распространенности дистрибутивов, в которых они используются. Например, часто встречается пакетный менеджер APT (advanced package tool), применяемый в семействах Debian, таких как Ubuntu, Linux Mint и другие. Также особо стоит отметить YUM, который применяется для дистрибутивов с форматами RPM, включая Fedora, CentOS и тому подобное.

Программы apt и apt-get (аналог apt, который появился раньше и более низкоуровневый) работают через командную строку. Однако для них существуют и надстройки с графическим интерфейсом, обеспечивающие удобное использование для обычных пользователей, которые могут устанавливать и удалять программы в знакомой им среде. Тем не менее, все возможности управления программами доступны преимущественно через Bash.

Справочная информация о команде apt

Когда программе apt передается первый аргумент (он также называется "команда" на изображении), указывается действие: установка программы, ее удаление или обновление. Вторым аргументом передается название пакета или его часть для поиска. Как для команд, так и для имен пакетов работает автодополнение. Программы берутся из списка источников ПО — репозиториев, список которых можно изменить.

Изменение программного обеспечения на компьютере относится к административным задачам, поэтому для некоторых команд apt требуются права администратора. Полный синтаксис установки и удаления ПО выглядит следующим образом:

sudo apt install имя_пакета
sudo apt remove имя_пакета

Например, если требуется установить консольный файловый менеджер Midnight Commander, но вы не знаете точного имени пакета, можно использовать команду search утилиты apt. В результате будет выведен список пакетов с кратким описанием. Очевидно, что вам нужен пакет mc.

Команда apt search

Для установки программы apt используется команда install. Сначала apt собирает информацию о пакете и его зависимостях. После этого будет предложено подтвердить ваше намерение установить пакет, и начнется сам процесс установки.

Команда apt install

Команда sudo apt autoremove позволяет удалять неиспользуемые пакеты, которые, вероятно, требовались для установки других программ. А если нужно удалить саму программу, следует воспользоваться командой remove утилиты apt.

Вопросы для самопроверки:

  1. Что подразумевается под термином "пакетные менеджеры" в контексте операционных систем?
  2. Какую роль выполняет пакетный менеджер при установке программного обеспечения?
  3. В чем разница между apt и apt-get?
  4. Какие аргументы передаются программе apt для установки, удаления или обновления пакетов?
  5. Как можно найти точное имя пакета, если оно неизвестно, с помощью утилиты apt?
  6. Опиши процесс установки пакета с использованием команды apt install.

Программа курса:

  1. Описание курса
  2. История операционной системы Linux
  3. Основы лицензии GNU GPL и её преимущества
  4. Функции и структура ядра Linux-систем
  5. Структура и каталоги файловой системы Linux
  6. Основные типы файлов в системе Linux
  7. Интерфейс командной строки в Linux
  8. Командная оболочка Bash в Linux
  9. Использование параметров команд в Bash
  10. Использование Ctrl+C, Ctrl+D и Ctrl+Z
  11. Автодополнение и история команд в Bash
  12. Перенаправление ввода и вывода в Bash
  13. Документация Linux и Man-страницы
  14. Абсолютная и относительная адресация в Linux
  15. Команда ls - как просматривать каталоги в Linux
  16. Копирование, перемещение и удаление в Linux
  17. Жесткие и символьные ссылки в Linux
  18. Создание жестких и символических ссылок в Linux
  19. Права доступа к файлам и каталогам в Linux
  20. Изменение прав доступа к файлам с помощью chmod
  21. Использование шаблонов имен файлов в Linux
  22. Поиск файлов в Linux с помощью команды find
  23. Использование команды sudo в Linux
  24. Управление пакетами с помощью APT в Linux