Для установки, удаления, обновления программ и поддержания целостности системы используются менеджеры пакетов.
С точки зрения менеджера пакетов программное обеспечение представляет собой набор компонентов — программных пакетов
.
Такие компоненты содержат в себе набор исполняемых программ и вспомогательных файлов, необходимых для корректной работы программного обеспечения.
Менеджеры пакетов облегчают установку программ
: они позволяют проверить наличие необходимых для работы устанавливаемой программы компонент подходящей версии непосредственно в момент установки, а также производят необходимые процедуры для регистрации программы в операционной среде пользователя: сразу после установки программа может быть доступна пользователю из командной строки и, если это предусмотрено, появляется в меню всех графических оболочек.
Благодаря менеджерам пакетов, обычно не требуется непосредственно обращаться к установочным процедурам отдельных программ или непосредственно работать с каталогами, в которых установлены исполняемые файлы и компоненты программ (обычно это /usr/bin, /usr/share/имя_пакета) - всю работу делает менеджер пакетов. Поэтому установку, обновление и удаление программ обычно называют управлением пакетами.
Часто компоненты, используемые различными программами, выделяют в отдельные пакеты и помечают, что для работы ПО, предоставляемого пакетом A, необходимо установить пакет B. В таком случае говорят, что пакет A зависит от пакета B
или что между пакетами A и B существует зависимость
.
Отслеживание зависимостей между такими пакетами представляет собой серьезную задачу для любого дистрибутива - некоторые компоненты могут быть взаимозаменяемыми: может обнаружиться несколько пакетов, предлагающих затребованный ресурс.
Задача контроля целостности и непротиворечивости установленного в системе ПО еще сложнее. Представим, что некие программы A и B требуют наличия в системе компоненты C версии 1.0. Обновление версии пакета A, требующее обновления компоненты C до новой, использующей новый интерфейс доступа, версии (скажем, до версии 2.0), влечет за собой обязательное обновление и программы B.
Для автоматизации этого процесса и применяется система управления программными пакетами pacman и yay.
Пакеты можно устанавливать как с помощью терминального пакетного менеджера, так и с помощью графического пакетного менеджера.
Пакеты можно скачать и установить из таких источников как:
Внимание! Во избежание проблем с зависимостями и безопасностью скачиваемых пакетов рекомендуется использовать официальный репозиторий.
Поддерживается установка пакетов и возможность запуска исполняемых файлов из архивов:
Внимание! Настоятельно рекомендуется устанавливать пакеты поддерживаемые Pacman.
Установка других пакетов требует углубленных знаний в области системного администрирования.
Пакеты и библиотеки постоянно обновляются, если два пакета, например А и В зависят от одной и той же библиотеки, то обновление пакета А повлечет за собой обновление библиотеки на новую версию, в то время когда пакет В зависит от старой версии, таким образом пакет В будет сломан.
Поэтому частичные обновления не поддерживаются
, не рекомендуется использовать такие команды как:
pacman -Sy имя_пакета
pacman -Sy #и затем
pacman -S пакет
pacman -Syuw #(имеет те же риски, что и pacman -Sy, поскольку он обновит базу пакетов pacman без установки новых пакетов)
Также не рекомендуется игнорировать
какие-либо пакеты при обновлении через графический пакетный менеджер.
Следует иметь в виду, что если обновление было прервано из-за какой-либо ошибки, то конечный результат будет такой же, как и при использовании pacman -Sy. Поэтому необходимо устранить ошибку и завершить обновление как можно скорее.
Если было проведено частичное обновление
и бинарные файлы оказались сломаны, то следует воспользоваться командой:
pacman -Syu
Или в графическом пакетном менеджере выполнить "Обновление баз данных".