wor*_*ude 23
要在未登录系统或登录系统之前(即“启动时”)运行服务,您需要创建一个启动脚本并将其添加到启动序列中。
服务脚本由三部分组成:启动、停止和重启。
服务脚本的基本结构是:
#!/bin/bash
#
RETVAL=0;
start() {
echo “Starting <Service>”
}
stop() {
echo “Stopping <Service>”
}
restart() {
stop
start
}
case “$1? in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $”Usage: $0 {start|stop|restart}”
exit 1
esac
exit $RETVAL
Run Code Online (Sandbox Code Playgroud)
根据自己的喜好调整脚本后,只需将其放在 /etc/init.d/ 中,
然后将其添加到系统服务启动过程中(在 Fedora 上,我不是 Ubuntu 用户,>D):
chkconfig -add <ServiceName>
Run Code Online (Sandbox Code Playgroud)
服务将被添加到系统启动过程中,您将不必再次手动启动它。
干杯!
小智 19
根据 init 系统,您可以以不同的方式创建 init 脚本。Fedora 为您提供了 upstart 和 systemd 供您选择,当然还有 SysV 兼容性。
/etc/init/custom-tomcat.conf
放进去:
start on stopped rc RUNLEVEL=3
respawn
exec /path/to/your/tomcat --and --parameters
Run Code Online (Sandbox Code Playgroud)并且您的 Tomcat 应该在系统启动时启动。
/etc/systemd/system/custom-tomcat.service
放进去:
[Service]
ExecStart=/path/to/your/tomcat --and --parameters
Restart=always
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)并使用systemctl enable custom-tomcat.service
. 它将在每次正常启动时启动。
当然,这两个 init 系统还有更多配置选项,您可以在他们的文档中查看这些选项。
如果您有cron
守护进程,预定义的 cron 时间挂钩之一是@reboot
,它会在系统启动时自然运行。运行crontab -e
以编辑您的crontab
文件,并添加一行:
@reboot /your/command/here
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
30620 次 |
最近记录: |