前言
在linux下面使用systemd来管理各种service,个人可以自动添加服务。
样例一
给mongodb配置服务。
背景
在ubuntu下面配置好了mongodb,不过不想每次都进目录敲命令,譬如:
start.sh以及stop.sh,怎么办?
好了,下面是答案:
服务内容如下,
[Unit]
Description=mongodb程序
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/opt/mongodb-3.4.0/start.sh
ExecStop=/opt/mongodb-3.4.0/stop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
在ubuntu下面添加的过程如下:
配置过程
假设服务名称叫mongodb,好了,请看看是不是有同名的服务,这样看:
systemctl list-units
或者
systemctl list-unit-files
结果分别如下:
我们不需要这么多,过滤一下即可:
systemctl list-unit-files | grep 'mong'
没有这个服务,
好了,配置服务:
#打开service存放目录
cd /lib/systemd/system/
#注意,centos下面在
cd /usr/lib/systemd/system/
#创建文件
sudo touch mongodb.service
#添加执行权限。
sudo chmod +x mongodb.service
#编辑文件
sudo vim mongodb.service
输入内容如下:
[Unit]
Description=mongodb程序
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/opt/mongodb-3.4.0/start.sh
ExecStop=/opt/mongodb-3.4.0/stop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
保存,然后重新加载服务:
systemctl daemon-reload
查看是否有这个服务:
systemctl list-unit-files | grep 'mongo'
启动:
systemctl start mongodb
#查看状态是
systemctl status mongodb
#关闭重启是
systemctl stop和restart mongodb
添加开机启动是:
systemctl enable mongodb