Sergey Korobitsin

May. 12th, 2009

05:44 pm - Apt Pinning в Debian и дериватах

В Debian и производных от него дистрибутивах очень гибкая система управления пакетами. Я вкратце расскажу об одном из приемов такого управления - Apt Pinning. Он позволяет настроить приоритеты для пакетов, которые подлежат установке. Работает это так: создается файл /etc/apt/preferences примерно такого вида:

Package: *
Pin: release a=stable
Pin-Priority: 650

Package: *
Pin: release a=testing
Pin-Priority: 600

Package: *
Pin release a=unstable
Pin-Priority: 550

Package: *
Pin release a=oldstable
Pin-Priority: 510

Каждая запись (записи отделяются пустой строкой) определяет Pin. В строке Package: указываем пакет, можно использовать метасимвол *, в строке Pin: указываем тип пина (можно посмотреть в руководстве по apt), обычно это release - название выпуска Debian, ну и в Pin-Priority, соответственно, приоритет. Пакеты с пинами приоритетом меньше 500 установлены не будут вообще (если специально не попросить).

Найденные подводные камни:

1. В пинe release не работают codename релизов, т.е. etch, lenny и т.п. работать не будет.
2. При наличии в apt.conf(.d) опции Default-Release тоже работать не будет.

Tags: ,
(Leave a comment)