如何保持某些进程(Web 服务器、数据库等)在后台运行,并确保在系统重启时它会立即重新启动?
我希望为未配置的用户(没有 sudo 访问权限)提供此功能,因此upstart
这里可能会有问题。此外,最好有ansible
剧本或chef
配方,并自动部署,这样每次进程都会重新启动。
我知道有runit
,supervisord
等等,但是其中许多没有简单的设置,并且没有 sudo 访问权限就无法使用。
答案1
如果您的 cron 守护程序支持@reboot
,您可以创建包含以下内容的 crontab:
@reboot /command/to/start/service
或者,您可以添加一个命令,/etc/rc.local
该命令将发送su
给适当的用户并运行该命令。例如:
su - someuser -c bin/rc.sh &