Порядок выполнения /etc/init.d и его связь с /etc/rcN.d

Немного покопавшись, я установил (возможно, я ошибаюсь, так как мои познания в этих вопросах довольно отрывочны), что сценарии в /etc/init.d запускаются в порядке, определяемом символическими ссылками в /etc/rcN.d. .

Мне не совсем понятно, почему у меня в Ubuntu 14.10 есть целая последовательность папок rcN.d с N от 0 до 5. Уровень выполнения указывает, что текущий уровень выполнения равен N 2. В /etc/rc2.d у меня есть файлы

s01rsyslog s02memcached ... so3grub-общий

Я предполагаю, что это указывает на то, что сценарии s01 будут выполняться до сценариев s02 и т. д.

Теперь вот что мне нужно сделать - запустить мой собственный скрипт в init.d ПОСЛЕ всего остального. Прежде чем я попробую это, я хотел бы просто установить, будет ли это правильным решением.

  • Создать скрипт
  • chmod +x это
  • создать символическую ссылку на него в /etc/rc2.d
  • назовите эту символическую ссылку с s04...

Я был бы очень признателен всем, кто мог бы подтвердить, что это правильный способ сделать что-то.


person DroidOS    schedule 27.02.2015    source источник
comment
Несмотря на то, что на протяжении многих лет существовало множество различных реализаций с некоторыми различиями здесь и там, в целом лучше сказать, что сценарии в /etc/rcN.d выполняются. Скрипты в /etc/init.d/ обычно не запускаются (кроме как вручную, потому что это легче запомнить, чем пытаться вспомнить, с какими rcN.d каталогами в данный момент связан тот или иной скрипт). Обычно основной скрипт находится в init.d, а rcN.d являются символическими ссылками для облегчения включения/отключения определенных сервисов). Но среда запуска обычно запускает только те, что в rcN.d...   -  person twalberg    schedule 28.02.2015
comment
Спасибо, что немного продвигает меня вперед, но не полностью отвечает на мой вопрос. Насколько я понимаю, записи ecN.d, начинающиеся с s01, будут выполняться до тех, которые начинаются с s02 и т. д.?   -  person DroidOS    schedule 28.02.2015


Ответы (1)


Наконец-то я нашел всю необходимую мне информацию об уровнях выполнения и многое другое здесь. Надеюсь, это будет полезно всем, кто столкнется с этим вопросом. Чтобы процитировать основные моменты, объясненные там

Проще говоря, «уровень запуска» определяет, какие программы выполняются при запуске системы. Большая часть вашего воздействия на уровни запуска будет связана с запуском системы. Вы хорошо познакомитесь с исключениями, когда вам в первый раз придется устранять неполадки в неисправной системе.

Уровни запуска Linux пронумерованы от 0 до 6. Уровни выполнения останавливаются на шести по практическим и историческим причинам, но при желании вполне возможно иметь больше.

Краткое объяснение различных уровней запуска:

  • 0 Останов системы
  • 1 одиночный пользователь
  • 2 Полный многопользовательский режим (по умолчанию)
  • 3-5 То же, что и 2
  • 6 Перезагрузка системы
person DroidOS    schedule 03.04.2015
comment
@Sneetsher - сделал это. Спасибо, что указали на упущение - person DroidOS; 10.12.2015
comment
Хорошо, не могли бы вы принять это, пожалуйста? Его будет проще найти в поиске, так как он будет иметь зеленый кружок. - person user.dz; 10.12.2015