Что предоставляет виртуальные загрузочные устройства LSB для Debian?

Версия Sysv init Debian использует сценарии, которые ссылаются на различные «загрузочные» объекты LSB, такие как $local_fs и $network как требования к использованию insserv при настройке последовательности загрузки, но они не обязательно предоставляются каким-либо /etc/init.d скрипт. /etc/insserv.conf относится к ним, но только для определения того, какие службы должны «объявлять необходимые зависимости объекта». Для меня это означало бы, что список сервисов «должен объявлять зависимости объекта», но, возможно, это просто плохой выбор слов, так как просмотр фактического insserv.conf означает, что он на самом деле означает, что этот список «должен объявить объект как зависимость », который очень отличается (любое разъяснение этого было бы оценено).

Очевидно, что такие вещи, как $network (которая, по-видимому, ссылается просто на возможность физической ссылки, то есть не фактической аренды dhcp и т. Д.), И $local_fs будет предоставляться ядром во время загрузки, но я не могу найти любая документация, в которой объясняется, как они будут считаться предварительно определенными как доступные или недоступные для системы init.

Благодаря виртуальным загрузочным insserv скрипты init могут зависеть от широко используемых функциональных возможностей, предоставляемых группами разного сценария или различными способами по распределению.

В зависимости от $network target означает, что требуется настроенное сетевое соединение. В Debian это означает запуск networking и ifupdown initscripts, как описано в insserv.conf .

$local_fs используется почти для каждого сценария запуска, так как это означает, что каждая локальная файловая система будет смонтирована, $remote_fs явно зависит от $network .

Скрипты, необходимые для достижения этих целей, не называются одинаковыми для каждого дистрибутива и могут меняться с одной версии ОС на другую. Поскольку insserv может быть настроен по-разному, чтобы отразить это изменение, initscripts в зависимости от этих объектов не нужно изменять для каждого конкретного случая.

Идея во время разработки этого стандарта LSB заключалась в том, чтобы сделать сценарии инициализации менее зависимыми от распределения, что теперь предоставляется системой в большинстве дистрибутивов.