编译安装或二进制安装的Linux程序,想要写入systemctl中,方便程序控制运行。
已经编译安装好的Redis,安装在/usr/local/redis/路径下,配置文件是/usr/local/redis/bin/redis.conf
之前启动方式都是./redis-server redis.conf,现对其进行修改。
进入/usr/lib/systemd/system/目录中,创建redis.service文件:
#表示基础信息
[Unit]
#描述
Description=Redis
#在哪个服务之后启动
After=syslog.target network.target remote-fs.target nss-lookup.target#表示服务信息
[Service]
Type=forking
#注意:需要和redis.conf配置文件中的信息一致
PIDFile=/var/run/redis_6379.pid
#启动服务的命令
#redis-server安装的路径 和 redis.conf配置文件的路径
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
#重新加载命令
ExecReload=/bin/kill -s HUP $MAINPID
#停止服务的命令
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true#安装相关信息
[Install]
#以哪种方式启动
WantedBy=multi-user.target
#multi-user.target表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。
文件创建好保存之后,要执行 systemctl daemon-reload
命令,使配置生效。
开机启动: systemctl enable redis.service
查看服务是否设置开机启动: systemctl is-enabled redis.service
停止服务开机启动: systemctl disable redis.service
启动: systemctl start redis.service
查看状态: systemctl status redis.service
重启: systemctl restart redis.service
停止: systemctl stop redis.service