Поскольку Ubuntu уже некоторое время использует upstart, я бы хотел использовать задание upstart для корректного завершения работы определенных приложений при завершении работы системы или перезагрузке. Важно, чтобы выключение или перезагрузка системы были приостановлены до тех пор, пока эти приложения не будут закрыты.
Иногда приложения будут запускаться вручную, а при выключении системы должен автоматически завершаться скрипт (который у меня уже есть). Поскольку приложения не могут быть надежно завершены без запуска (почти всех) других служб, завершение приложений должно быть выполнено до начала остального завершения работы.
Я думаю, что смогу решить эту проблему с помощью выскочки, которая будет срабатывать при выключении, но я не уверен, какие события мне следует использовать и каким образом. До сих пор я прочитал следующие (частично противоречащие) утверждения:
- В upstart нет общего события отключения
- Используйте строфу, как
start on starting shutdown
в определении работы - Используйте строфу, как
start on runlevel [06S]
в определении работы - Используйте строфу, как
start on starting runlevel [06S]
в определении работы - Используйте строфу, как
start on stopping runlevel [!06S]
в определении работы
Из этих рекомендаций вытекают следующие вопросы:
- Есть или нет общее событие выключения в выскочке Ubuntu?
- Каков рекомендуемый способ реализации «крюка отключения»?
- Когда запускаются события runlevel [x]; это при входе на уровень выполнения или при входе на уровень выполнения?
- Можем ли мы использовать что-то вроде
start on starting runlevel [x]
илиstart on stopping runlevel [x]
? - Что будет лучшим решением для моей проблемы?
большое спасибо
startup
событие, заключается в том, что для «заправки насоса» необходимо что- то . После того, как это одно привилегированное событие отправлено, все остальное может быть определено заданиями и заданиями, инициированнымиstartup
. Что касается того, чтобы не было единственногоshutdown
события, есть слишком много различных видовshutdown
для того, чтобы это было значимым. Лучше зависеть напрямую от рабочих мест, которые вам нужны.