FastNetMon

Saturday, 2 January 2010

Как в Debian Lenny поставить только один пакет из testing (squeeze) репозитория?

Корректность инструкции не гарантируется

Часто требуется поставить какой-либо новый пакет при этом не обновляя всю систему. Для этого есть очень элегантное решение и проверим его мы на ядре, которое в Debian стандартно стоит: 2.6.26-1

Открываем конфиг APT (он может не существовать):
vi /etc/apt/apt.conf


Добавляем там:

APT::Default-Release "stable";


Открываем список репозиториев:

vi /etc/apt/sources.list


Вот теперь есть выбор, подключать ли репозиторий squizee либо подключить репозиторий backports. Я рекомендую второе, ибо "Backports are recompiled packages from testing (mostly) and unstable (in a few cases only, e.g. security updates), so they will run without new libraries (wherever it is possible) on a stable Debian distribution. I recommend you to pick out single backports which fits your needs, and not to use all backports available here. ". То есть, в squiize по большей части софт завязан на уже новые версии библиотек и их также придется ставить, а вот в backports все собрано (если была возможность) собран с либами от Lenny. Вот список пакетов в debian-backports: http://packages.debian.org/lenny-backports/


Для backports добавляем:

deb http://www.backports.org/debian lenny-backports main contrib non-free


Для squeeze:

deb http://mirror.aarnet.edu.au/debian/ squeeze main
deb-src http://mirror.aarnet.edu.au/debian/ squeeze main


Для sid:

deb http://mirror.aarnet.edu.au/debian/ sid main
deb-src http://mirror.aarnet.edu.au/debian/ sid main


Обновляем данные репозиториев:

apt-get update


Ставим ключи backports репо:
apt-get install debian-backports-keyring


Обращаю внимание, что все пакеты из backposrts имеют меньший приоритет, чем основной репозиторий и они НИКОГДА без Вашего ведома не заменят стабильные версии ПО. Что очень удобно :)

Вот и все, теперь чтобы ставить пакет из репозитория backposrts необходимо вводить команду:

apt-get -t lenny-backports install package-name


А установка из тестинг:

apt-get -t testing install package-name


А чтобы обновлять текущий пакет до наиболее актуальной версии:

apt-get -t lenny-backports upgrade package-name


Для тестинга:

apt-get -t testing upgrade package-name


А вот пример установки нового ядра:

apt-get -t debian-backports install linux-image-2.6.30-bpo.2-amd64


А вот получение исходников от более новой версии:

apt-get -t testing source nginx


(c) http://serverfault.com/questions/22414/how-can-i-run-debian-stable-but-install-some-packages-from-testing

No comments :

Post a Comment

Note: only a member of this blog may post a comment.