即使机器重启后,如何保持进程在后台运行?

即使机器重启后,如何保持进程在后台运行?

如何保持某些进程(Web 服务器、数据库等)在后台运行,并确保在系统重启时它会立即重新启动?

我希望为未配置的用户(没有 sudo 访问权限)提供此功能,因此upstart这里可能会有问题。此外,最好有ansible剧本或chef配方,并自动部署,这样每次进程都会重新启动。

我知道有runitsupervisord等等,但是其中许多没有简单的设置,并且没有 sudo 访问权限就无法使用。

答案1

如果您的 cron 守护程序支持@reboot,您可以创建包含以下内容的 crontab:

@reboot /command/to/start/service

或者,您可以添加一个命令,/etc/rc.local该命令将发送su给适当的用户并运行该命令。例如:

su - someuser -c bin/rc.sh &

相关内容