把 Linux 进程配置成系统服务

/ 0评 / 0

Linux 下有些时候我们运行一个进程需要一直挂着(这就是 VPS 的意义啊……),这时候需要把前台进程放到后台去。一般可以用 screen,但是如果这种后台进程挂多了,每个都开一个 session 会很不方便。前几天配置 aria2 的时候看到一个神奇的操作:可以配置成一个 service,直接 service aria2c start/stop/restart 就可以了!

以配置 aria2c 为例,假设我们要运行这个命令(程序),并且放在后台:

/usr/local/bin/aria2c --conf-path=/root/.aria2/aria2.conf -D

可以写如下配置文件:

#!/bin/sh
### BEGIN INIT INFO
# Provides: aria2
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Aria2 Downloader
### END INIT INFO
case "$1" in
start)
 echo -n "Starting aria2c"
 /usr/local/bin/aria2c --conf-path=/root/.aria2/aria2.conf -D
 ;;
stop)
 echo -n "Shutting down aria2c"
 killall aria2c ;;
restart)
 killall aria2c
 /usr/local/bin/aria2c --conf-path=/root/.aria2/aria2.conf -D
 ;;
esac
exit

把文件保存为 aria2c,然后给予运行权限:

chmod +x aria2c

移动到 /etc/init.d/ 目录下:

mv aria2c /etc/init.d/

使用方法:

service aria2c start
service aria2c stop
service aria2c restart

来源

centos安装aria2 - 云+社区 - 腾讯云


知识共享许可协议 本文章采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。
欢迎转载,如有错误欢迎指出。
本文链接:https://skywt.cn/posts/linux-process-to-service/


发表评论

电子邮件地址不会被公开。 必填项已用*标注