7 июня 2010 г.

Pacman

Менеджер пакетов ArchLinux pacman позволяет управлять и настраивать пакеты как с официального репозитория, так и собранные пользователем. Он поддерживает систему в актуальном состоянии, синхронизируя пакеты с главным сервером и использует формат пакетов *.tar.gz.
Конфигурация pacman находится в файле /etc/pacman.conf.
Графические надстройки к нему как-то не получили особой популярности (хотя, возможно, ещё всё впереди), и в основном используют его в чистом виде, то есть из консоли.

Итак, небольшая шпаргалка по командам pacman.

-S синхронизация (--sync)

pacman -S pkg1 pkg2 устанавливает или обновляет пакеты вместе с их зависимостями
pacman -S repo/pkg устанавливает пакет из указанного репозитория (когда пакет имеет несколько версий в разных репозиториях, например, extra и testing)
pacman -S "pkg>=version" устанавливает пакет требуемой версии

pacman -Sw pkg скачивает пакет, но не устанавливает его
pacman -Sp pkg устанавливает пакет и выводит для него ссылку на скачивание вместе с зависимостями
pacman -Sf pkg устанавливает пакет, пропуская проверку конфликтов
pacman -Sd pkg устанавливает пакет, пропуская проверку зависимостей

pacman -Syu обновляет все пакеты системы (предварительно синхронизировав базы данных репозиториев)
pacman -Su обновляет все устаревшие пакеты (предпочтительнее предыдущая команда)
pacman -Suu обновляет пакеты с возможностью даунгрейда (если были, например, отключены репозитории testing и требуется откатиться на более старые версии)

pacman -Ss name ищет пакеты в базе данных по имени и описанию
pacman -Ssq pkg выводит в результатах поиска только имена пакетов
pacman -Si pkg показывает информацию о пакете
pacman -Sg group показывает пакеты, входящие в указанную группу
pacman -Sl repo показывает все пакеты из репозитория

pacman -Sc удаляет из кэша пакеты, которые уже были удалены (кэш хранится в /var/cache/pacman/pkg/)
pacman -Scc полная очистка кэша пакетов

-R Удаление (--remove)

pacman -R pkg удаляет пакет, оставляя зависимости в системе
pacman -Rs pkg удаляет пакет вместе с зависимостями, если они не используются другими пакетами
pacman -Rn pkg удаляет пакет и резервные копии его конфигурационных файлов (по-умолчаню, они сохраняются с добавлением расширения *.pacsave при удалении приложений)

-Q запрос (--query)

pacman -Qs name ищет пакеты среди установленных
pacman -Qi pkg показывает информацию об установленном пакете
pacman -Ql pkg показывает список файлов установленного пакета
pacman -Qc pkg показывает список изменений пакета (если пакет его имеет)
pacman -Qg group показывает все пакеты из группы
pacman -Qo /path/to/file показывает какой пакет является владельцем указанного файла

pacman -Qdt перечисляет все пакеты, больше не требуемые как зависимости
pacman -Qu выводит список устаревших пакетов
pacman -Qk pkg проверяет, все ли файлы, принадлежащие данному пакету присутствуют в системе

Ещё пара команд

pacman -U path/to/pkg.tar.gz устанавливает локальный пакет (или из интернета, если как путь будет прописана интернет-ссылка)
pacman -T pkg выводит список зависимостей, которые не удовлетворены в системе для указанного пакета

Справочная информация

pacman -V показывает версию pacman
pacman -h показывает синтаксис команды (если добавить опцию, то синтаксис для заданной опции, например pacman -Qh)
man pacman полный ман по командам pacman
man pacman.conf полный ман по файлу настроек pacman

1 комментарий: