SkyWT / 博客 / 把 Linux 进程配置成系统服务

把 Linux 进程配置成系统服务

2019 年 2 月 3 日 11:22
共 2 条评论


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

[notice]经测试,此方法在 CentOS 7 可能无效……[/notice]

以配置 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 - 云+社区 - 腾讯云


暂无评论


发表新的评论

所有评论都将经过博主审核。请勿填写无意义邮箱或发表无关评论、广告等,否则会被视为垃圾评论。

提交评论即表明你同意本网站使用 Cookie,并允许本站在后台记录你的邮箱、IP 地址等必要信息。这些信息不会被透露给其他用户。(提交一次评论后,本提示将不再展示)