пятница, 10 июля 2015 г.

Запрет запуска сервисов в chroot при установке пакетов

Чтобы не засорять ноутбук девелоперскими пакетами (которые часто бывают сильно разных версий squeeze, wheezy, jessie) я использую chroot, а точнее schroot. Для запрета запуска сервисов при установке пакетов по зависимостям внутри chroot нужно создать в chroot файл /usr/sbin/policy-rc.d (подсмотрено тут).

Для моего chroot с jessie это выглядит так:

% schroot -c jessie-dev
(jessie-dev) $ echo 'exit 101' | sudo tee /usr/sbin/policy-rc.d
(jessie-dev) $ sudo chmod +x /usr/sbin/policy-rc.d
(jessie-dev) $ sudo invoke-rc.d dbus start
invoke-rc.d: policy-rc.d denied execution of start.

Теперь при установке сервисов они не запускаются автоматически. Стоит отметить, что данный запрет не действует, если в preinst или postinst используют /sbin/service foo start или /etc/init.d/foo start.

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

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