Как избежать апгрейда пакета в Debian
Допустим, в Debian или Ubuntu (и всех остальных дистрах, использующих apt) у вас имеется установленный пакет, который Вы не хотите обновлять. Например, его новые версии выходят слишком часто и на их скачку кушается много трафика, или Вы его как-то сами модифицировали, или по какой-либо другой причине Вас устраивает его конкретная версия. Ниже описываются два способа, с использованием
Способ 1: Aptitude
от root или с sudo делаем:
Если же необходимо совершить обратное действие, то делаем
Способ 2: Apt-pinning
Редактируем
Формат простой:
Подробнее по теме можно почитать тут и тут
aptitude и apt-pinningСпособ 1: Aptitude
от root или с sudo делаем:
aptitude hold packagenameгде packagename - имя интересующего вас пакета.
Если же необходимо совершить обратное действие, то делаем
aptitude unhold packagenameЕстественно, предварительно убедитесь, что у вас есть пакет aptitude :-)
Способ 2: Apt-pinning
Редактируем
/etc/apt/preferences:Формат простой:
Package: packagename Pin: <маска прикрепления> Pin-Priority: <приоритет прикрепления>Например, чтобы "прикрепить" пакет
drupal к версии 4.5.3, добавьте следующие строки:
Package: drupal Pin: version 4.5.3* Pin-Priority: 1001
Подробнее по теме можно почитать тут и тут
- Добавить комментарий
- 890 просмотров
Страница для печати


Заблокировть обновление
echo "package_name hold" > dpkg --set-selections
Снять блокировку
echo "package_name install" > dpkg --set-selections
вроде как с aptitude немного гуманней ;-) хотя через просто dpkg тоже можно ;)
полезный тип!
а еще я слышал что synaptic умеет тоже холдить а потом если надо эти холды конверлить в apt-pinning. сам не пробовал, за что купил зато и продаю Ж:-)
а еще можно wajig
====
hold Place listed packages on hold so they are not upgraded
list-hold List those packages on hold
unhold Remove listed packages from hold so they are again upgraded
====
--
Signature invent in progress 19% #.........