Почему вы установили бы те же значения в Required-start, что и для Required-stop в скрипте init.d?

#debian #init.d

#debian #init.d

Вопрос:

Вики Debian приведен следующий пример для ‘INIT INFO`:

 ### BEGIN INIT INFO
# Provides:          scriptname
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO
  

Затем в документации говорится следующее о Required-stop:

Требуется-Stop: boot_facility_1 [boot_facility_2 …]

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

Разве не бессмысленно устанавливать те же значения в Required-Start , если он не будет выполняться до тех пор, пока средство не будет остановлено?

Ответ №1:

Требуется-Stop: boot_facility_1 [boot_facility_2 …]

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

Required-Stop используется для указания, что перечисленные средства не должны быть остановлены до того, как будут остановлены те, которые предоставлены текущим скриптом.

Это делается для предотвращения, например, остановки $remote_fs и размонтирования подключенных к NFS / usr и / var файлов до того, как у вашего сервера баз данных появится шанс безопасно завершить работу и должным образом сохранить базу данных в файловой системе.

Комментарии:

1. Ооо, я понимаю, в чем была моя путаница. Спасибо. 🙂

Ответ №2:

Дополнительный пример: я запускаю VirtualBox внутри сервера VNC, запускаемого двумя разными скриптами инициализации.

Я хочу, чтобы VirtualBox закрывался перед VNC. Потому что, если VNC закроется первым, VirtualBox может быть уничтожен вместо того, чтобы завершать работу чисто!

Итак, я указываю, что мои сценарии инициализации VirtualBox зависят от VNC для запуска, а также для закрытия.