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

Как сохранить процесс в фоновом режиме даже после перезагрузки компьютера?

Каким образом можно поддерживать работу некоторого процесса (веб-сервер, базу данных и т. Д.) В фоновом режиме и быть уверенным, что в случае перезагрузки системы он немедленно запустится снова?

Я бы хотел иметь эту функцию для незарегистрированного пользователя (без доступа sudo), поэтому upstart здесь может быть проблематично. Кроме того, было бы идеально иметь ansible playbook или chef рецепт для этого и автоматическое развертывание, чтобы каждый раз процесс перезапускался.

Я знаю есть runit, supervisord и так далее, но многие из них не имеют простой настройки и недоступны без доступа sudo.

Если ваш демон cron поддерживает @reboot, вы можете создать crontab с таким содержимым:

@reboot /command/to/start/service

В качестве альтернативы вы можете добавить команду в /etc/rc.local который будет su соответствующему пользователю и запустите команду. Например:

su - someuser -c bin/rc.sh &