Управление пакетами
3.4 Пакетные менеджеры
Каждая система Linux нуждается в добавлении, удалении и обновлении программного обеспечения. В прошлом это означало загрузку исходного кода, его настройку, компиляцию и копирование файлов в каждую систему, требующую обновления. К счастью, современные дистрибутивы используют пакеты , которые представляют собой сжатые файлы, объединяющие приложение и его зависимости (или необходимые файлы), что значительно упрощает установку за счет создания правильных каталогов, копирования в них нужных файлов и создания таких необходимых элементов, как символические ссылки. .
Менеджер пакетов заботится о том, чтобы отслеживать, какие файлы принадлежат какому пакету, и даже загружать обновления из репозиториев, обычно с удаленного сервера, совместно использующего соответствующие обновления для дистрибутива. В Linux существует множество различных систем управления программными пакетами, но две самые популярные — это системы Debian и Red Hat.
Дистрибутив Debian и его производные, такие как Ubuntu и Mint, используют систему управления пакетами Debian. В основе управления пакетами Debian лежат программные пакеты, которые распространяются в виде файлов, оканчивающихся на .debрасширение.
Инструментом самого низкого уровня для управления этими файлами является dpkgкоманда. Эта команда может быть сложной для начинающих пользователей Linux, поэтому Advanced Package Tool ( apt-getинтерфейсная программа для dpkgинструмента) упрощает управление пакетами. Дополнительные инструменты командной строки, которые служат в качестве внешних интерфейсов для dpkgвключения aptitudeи внешних интерфейсов с графическим интерфейсом, таких как Synaptic и Software Center .
База стандартов Linux , которая является проектом Linux Foundation , предназначена для определения (на основе консенсуса) набора стандартов, повышающих совместимость между соответствующими системами Linux. Согласно базе стандартов Linux, стандартной системой управления пакетами является RPM.
RPM использует .rpmфайл для каждого программного пакета. Эта система используется дистрибутивами Red Hat, включая Centos и Fedora, для управления программным обеспечением. Несколько других дистрибутивов, не являющихся производными от Red Hat, например SUSE, OpenSUSE и Arch, также используют RPM.
Как и система Debian, системы управления пакетами RPM отслеживают зависимости между пакетами. Отслеживание зависимостей гарантирует, что при установке пакета система также установит все пакеты, необходимые этому пакету для правильной работы. Зависимости также обеспечивают правильное выполнение обновлений и удалений программного обеспечения.
Базовым инструментом, наиболее часто используемым для управления пакетами RPM, является rpmкоманда. В то время как rpmкоманда может устанавливать, обновлять, запрашивать и удалять пакеты, интерфейсные инструменты командной строки, такие как yumи up2dateавтоматизируют процесс решения проблем с зависимостями.
Существуют также интерфейсные инструменты с графическим интерфейсом, такие как Yumex и Gnome PackageKit , которые также упрощают управление пакетами RPM.
В некоторых дистрибутивах на основе RPM реализован стиль управления пакетами ZYpp (или libzypp ), в основном это openSUSE и SUSE Linux Enterprise, а также мобильные дистрибутивы MeeGo, Tizen и Sailfish.
Эта zypperкоманда является основой метода ZYpp и включает в себя короткие и длинные английские команды для выполнения функций, таких как установка пакета, включая все необходимые зависимости.zypper in packagename
Большинство команд, связанных с управлением пакетами, требуют привилегий root. Эмпирическое правило заключается в том, что если команда влияет на состояние пакета, требуется административный доступ. Другими словами, обычный пользователь может выполнять запрос или поиск, но для добавления, обновления или удаления пакета требуется выполнить команду от имени пользователя root.
Last updated