Назад | Перейти на главную страницу

Есть ли тайм-аут для скриптов init.d, выполняемых во время загрузки?

Я создаю несколько скриптов, которые регистрируются для выполнения при запуске сервера в CentOS 6.5.

Один из этих сценариев имеет цикл while, который блокируется до тех пор, пока он не найдет сообщение об успешном запуске в журнале другого процесса, который также запускается во время загрузки (init.d).

Если эта служба, от которой зависит мой сценарий, никогда не регистрирует успешный запуск в своем файле журнала, а мой сценарий навсегда зависает в цикле while, приведет ли этот конкретный сценарий к тому, что операционная система полностью зависнет и никогда не запустится? Есть ли настройка тайм-аута для скриптов init.d?

Мои сценарии зарегистрированы для выполнения в файле rc.local.

Если сценарий init.d не завершается, нормальный запуск системы будет прерван на неопределенный срок.

Одним из распространенных решений является включение счетчика в цикл while и выход с сообщением об ошибке после заданного количества циклов while. Если вы ждете внешней команды, у которой нет параметра тайм-аута, взгляните на этот вопрос.