Мои сценарии уровня запуска 0 в /etc/rc0.d, которые должны выполняться при остановке, например,
Правильно ли, что порядок исполнения такой, как указано выше, то есть
Я сбит с толку, потому что в моей встроенной системе некоторые скрипты не выполняются, и эта страница говорит
Линия S20 запускается перед S91, а K91 убивает перед K20.
что противоречит моему тексту выше.
Отвечая на свой вопрос, для полноты:
Я использую busybox в системе OpenEmbedded. Сценарий rc в /etc/init.d/rc
имеет следующее поведение:
Кроме того, меня укусило то, что shutdown now
фактически переключается на уровень выполнения 1, а не уровень выполнения 0. Вы должны использовать halt
или poweroff
для уровня запуска 0. Итак, мои скрипты в rc0.d на самом деле не выполнялись, только те, которые оказались в rc1.d.
Это зависит от используемого вами демона инициализации.
Для SysVInit вы можете предположить, что произойдет что-то вроде следующего, когда вы измените уровень запуска на 0:
rl=0
for k in /etc/rc$rl.d/K*; do
$k stop
done
for s in /etc/rc$rl.d/S*; do
$s start
done
Я не вижу противоречия приведенного вами предложения тому, что вы сказали выше.