Сообщает ли он ОС, что «с этого момента, когда вы устанавливаете пакеты, независимо от того, какой пакет (--local), если этот пакет пытается установить /sbin/initctl, установите его (--add) в /sbin/initctl. распространить (--переименовать)"
--переименовать
говорит ему немедленно переместить любой существующий файл
- я бы поставил
--Добавлять
рядом с "сообщить ОС"
Дело в том, что если файл перенаправляется в другой файл с помощью этой команды dpkg-divert (скажем, из xfile в xfile.distrib) пакетом, то при использовании пакета вместо исходного xfile используется xfile.distrib?
Нет. Тот, кто устроил диверсию, должен предоставить что-то вместо этого. xfile
(в данном случае это вы). На этой странице они делают:
ln -s /bin/true /sbin/initctl
диверсии
файл состоит из трехстрочных групп:
- Файл, который нужно перенаправить
- Отклоненное местоположение
- Пакет, устанавливающий диверсию
Итак, для следующих трех строк:
/usr/доля/дикт/слова
/usr/share/dict/words.pre-dictionaries-common
словари-общие
дпкг
отвлечет установки /usr/доля/дикт/слова
из пакетов, кроме словари-общие
(сказать, американский
, например) к /usr/share/dict/words.pre-dictionaries-common
. Если вы установите американский
, вы можете увидеть это в действии:
# dpkg -S /usr/share/dict/words
диверсия по словарям-общим из: /usr/share/dict/words
перенаправление по словарям-общим на: /usr/share/dict/words.pre-dictionaries-common
американский: /usr/share/dict/words
Это руководство немного устарело: initctl
это Upstart, который больше не используется. Вы даже не можете установить его больше. Управление службами осуществляется с помощью systemd, и теперь вы используете systemctl
вместо.