CentOS7 可以在 SystemD 管理服务 Service 方式实现服务的自启动
SystemD 即为 System Daemon,是 linux 下的一种 init 软件,开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降低 Shell 的系统开销的效果。
这里假设需要启动
# /usr/share/autostartup/foobar.sh
STEP1. 创建 SystemD 管理服务使用的.service 文件
/usr/share/autostartup/foobar.service
以下是测试 service 文件,.service 的具体编写,参考 systemd 相关文档
[Unit]
Description=foobar
Documentation=http://www.doc.com/doc.html
After=network.target
[Service]
Type=simple
WorkingDirectory=/home/foobar
ExecStart=/usr/share/autostartup/foobar.sh
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=foobar
User=foobar
Group=foobar
Environment=
[Install]
WantedBy=multi-user.target
STEP2. 将编写好的 service 文件移动到 `/usr/lib/systemd/` 下的指定目录下,这里我们需要随系统启动,所以移动到 `/usr/lib/systemd/system/` 下
cp /usr/share/autostartup/foobar.service /usr/lib/systemd/system/foobar.service
STEP3. 配置和启动相应的 Service
# 重新加载 systemd 的配置
systemctl daemon-reload
配置服务为开机启动#
systemctl enable foobar.service
开启服务#
systemctl start foobar.service
关闭服务#
systemctl stop foobar.service