Система инициализации Upstart
Upstart основанная на событиях замена традиционного демона init.
Первоначально демон Upstart генерирует событие startup
$ grep 'start on startup' /etc/init/*.conf /etc/init/hostname.conf:start on startup /etc/init/mountall.conf:start on startup
Примерно получается такая схема
Использование Upstart
- Управление заданием
start и stop
Задания можно запускать и останавливать при помощи программ start и stop, размещенных в каталоге /sbin. Каждой из них необходимо передать в качестве параметров список заданий для обработки. Результаты своей работы обе программы предоставляют в поток стандартного вывода.
# start tty1 tty1 (start) running, process 7490 active # stop tty1 tty1 (stop) running, process 7490 killed status
Программа status позволяет, как видно из названия, узнать состояние, в котором находится задание.
# status tty1 tty1 (stop) waiting # start tty1 tty1 (start) running, process 4418 # status tty1 tty1 (start) running, process 4418
Сначала выводится название задания, затем последняя операция, которая выполнялась над заданием (запуск/останов), текущее состояние и идентификатор процесса, если таковой имеется.
initctl list
Список всех заданий и их состояний на текущий момент можно получить при помощи команды initctl list.
# initctl list control-alt-delete (stop)waiting logd (start) running, process 2347 rc-default (stop) waiting rc0 (stop) waiting rc0-halt (stop) waiting rc0-poweroff (stop) waiting rc1 (stop) waiting rc2 (stop) waiting rc3 (stop) waiting rc4 (stop) waiting rc5 (stop) waiting rc6 (stop) waiting rcS (stop) waiting rcS-sulogin (stop) waiting sulogin (stop) waiting tty1 (start) running, process 4418 tty2 (start) running, process 7367 tty3 (start) running, process 7368 tty4 (start) running, process 7369 tty5 (start) running, process 7370 tty6 (start) running, process 7371
initctl emit
При помощи это команды у вас есть возможность генерировать любое событие. Очень удобная штука при написании собственных заданий. Например, имеется задание:
on bounce exec echo --Bounced-- console output
Следующая команда заставит его выполниться
# initctl emit bounce # --Bounced--
📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Китайский VPN Shadowsocks простая установка и настройка
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах