开机让软件自启动我们只需要在debian中编辑rc.local文件就可以了,希望文章对各位有帮助,debian设置开机自启动的方法很多,个人觉得编辑/etc/rc.local配置最简单有效,代码如下:
sudo vi /etc/rc.local
在exit 0之前添加软件启动命令,如:
/usr/local/bin/sslocal -c /etc/shadowsocks.json
保存文件,重启系统即可生效,有人如果是要把服务添加进去我们可以参考下面方法.
添加自启动服务
1.新建脚本文件,在 /etc/init.d 下加入脚本文件,代码如下:
sudo vi /etc/init.d/aria2c
输入内容:
- #!/bin/sh
- ###BEGININITINFO
- #Provides:Aria2
- #Required-Start:$network$local_fs$remote_fs
- #Required-Stop::$network$local_fs$remote_fs
- #Should-Start:$all
- #Should-Stop:$all
- #Default-Start:2345
- #Default-Stop:016
- #Short-Description:Aria2-DownloadManager
- #Description:Aria2-DownloadManager
- ###ENDINITINFO
- NAME=aria2c
- USER=pi
- ARIA2C=/usr/bin/$NAME
- PIDFILE=/var/run/$NAME.pid
- CONF=/home/$USER/.aria2/aria2.conf
- ARGS="--conf-path=${CONF}"
- test-f$ARIA2C||exit0
- ./lib/lsb/init-functions
- case"$1"in
- start)log_daemon_msg"Startingaria2c""aria2c"
- start-stop-daemon-S-q-b-m-p$PIDFILE-c$USER-a$ARIA2C--$ARGS
- log_end_msg$?
- ;;
- stop)log_daemon_msg"Stoppingaria2c""aria2c"
- start-stop-daemon-K-q-p$PIDFILE
- log_end_msg$?
- ;;
- restart|reload|force-reload)
- log_daemon_msg"Restartingaria2c""aria2c"
- start-stop-daemon-K-R5-q-p$PIDFILE
- start-stop-daemon-S-q-b-m-p$PIDFILE-c$USER-a$ARIA2C--$ARGS
- log_end_msg$?
- ;;
- status)
- status_of_proc-p$PIDFILE$ARIA2Caria2c&&exit0||exit$?
- ;;//phpfensi.com
- *)log_action_msg"Usage:/etc/init.d/aria2c{start|stop|restart|reload|force-reload|status}"
- exit2
- ;;
- esac
- exit0
以上脚本 ### BEGIN INIT INFO - ### END INIT INFO 为启动脚本需要定义的 metadata 信息,不定义会报错,启用脚本使用 start-stop-daemon 命令,参数为:
- -S,--start启动服务
- -K,--stop停止服务
- -q,--quiet静默启动,不输出日志
- -b,--background后台启动
- -m,--make-pidfile创建pid文件
- -p,--pidfile指定pid文件
- -c,--chuid指定启动用户
- -a,--startaspathname进程路径
- -R,--retrytimeout|schedule重试次数
需要将 USER 修改为自己的用户名称,配置文件位于 /home/$USER/.aria2/aria2.conf,更多参数含义可以通过 man start-stop-daemon 进行查看,代码如下:
修改脚本权限:sudo chmod +x /etc/init.d/aria2c
测试脚本:
- sudo/etc/init.d/aria2cstart
- sudo/etc/init.d/aria2cstatus
- sudo/etc/init.d/aria2cstop
- sudo/etc/init.d/aria2cstatus
- sudo/etc/init.d/aria2crestart
2.使用 insserv 设置自动启动
添加服务:
- sudoinsserv/etc/init.d/aria2c#添加服务
- sudoinsserv-r/etc/init.d/aria2c#删除服务
重启测试:
- sudoreboot
- sudo/etc/init.d/aria2cstatus