суббота, 12 ноября 2011 г.

Удерживание пакетов при обновлении Debian


Удерживание некоторых пакетов от обновления при глобальном апдейте ПО на серверах с Debian
Например надо захолдить какой то пакет, чтобы он не обновился вместе со всем ПО при обновлении Debian:
Допустим это будет серверная часть mysql, даем следующую команду:
echo "mysql-server-5.0 hold" | dpkg --set-selections
Теперь выводим список всех текущих пакетов в удержанном состоянии и видим там наш пакет (после чего можно спокойно обновляться):
dpkg --get-selections | grep -i hold
mysql-server-5.0                                hold
Вот так пакет выводится из холда:
echo "mysql-server-5.0 install" | dpkg --set-selections
Пример массового удерживания всех пакетов php (похоже что dpkg не поддерживает wildcard для холда пакетов):
for a in $(dpkg --get-selections | grep -i php5 | awk '{print $1}'); do echo "$a hold" | dpkg --set-selections; done
Проверяем:
dpkg --get-selections | grep -i hold
libapache2-mod-php5                             hold
php5                                            hold
php5-cgi                                        hold
php5-cli                                        hold
php5-common                                     hold
php5-curl                                       hold
php5-gd                                         hold
php5-mcrypt                                     hold
php5-mysql                                      hold
php5-xsl                                        hold

Комментариев нет:

Отправить комментарий