Home > 系统管理, 零敲碎打 > CentOS7 使用SystemD实现开机自启动和服务管理

CentOS7 使用SystemD实现开机自启动和服务管理

CentOS7 可以在SystemD管理服务Service方式实现服务的自启动

SystemD即为System Daemon,是linux下的一种init软件,开发目标是提供
更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,
同时达到降低Shell的系统开销的效果。

这里假设需要启动

1
# /usr/share/autostartup/foobar.sh

STEP1.创建SystemD管理服务使用的.service文件

1
/usr/share/autostartup/foobar.service

以下是测试service文件,.service的具体编写,参考systemd相关文档

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[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/`下

1
cp /usr/share/autostartup/foobar.service /usr/lib/systemd/system/foobar.service

STEP3.配置和启动相应的Service

1
2
3
4
5
6
7
8
# 重新加载systemd的配置
systemctl daemon-reload
# 配置服务为开机启动
systemctl enable foobar.service
# 开启服务
systemctl start foobar.service
#关闭服务
systemctl stop foobar.service
Categories: 系统管理, 零敲碎打 Tags: ,
  1. No comments yet.
  1. No trackbacks yet.