有个小脚本 speed 是必须手动输入 nohup ./speed 才能后台运行,现在我想将它加入到 /etc/rc.local 实现开机自启,
请问该在 /etc/rc.local 里怎么写呢?
另外,如何将这个脚本写成系统服务,实现启动重启停止呢?
请问该在 /etc/rc.local 里怎么写呢?
另外,如何将这个脚本写成系统服务,实现启动重启停止呢?
|
1
我当前的办法是在 /etc/rc.local 里写为
nohup /root/speed & 但是不生效 |
|
2
rc.local 里面不需要 nohup
|
|
fengfisher2Apr 21, 2017
3
你加 x 权限就可以了。
chmod 755 xxx.sh |
|
4
@ys0290 这个脚本运行时会调用一个 json 文件,现在提示
Open config file failed: open ./speed.json: no such file or directory 是不是还要给这文件什么权限才能一并开机调用起来呢? |
|
5
"另外,如何将这个脚本写成系统服务,实现启动重启停止呢?"百度一下就有了。
因为 1 ,你要在脚本里面添加选项,因为不知道你怎么写的,所以方法很多。 2 ,也不太明白,你说的系统服务是指 /etc/init.d/下面调用脚本呢?还是加到 service 里面,还是你想直接 chkconfig 这里开机启动。 |
|
6
写个脚本
cd 过去 |
|
8
|
|
SharkIngApr 21, 2017 via iPhone
9
用绝对路径
|
|
10
cd /脚本所在路径
./speed cd - 直接写在 /ect/rc.local 里面 |
|
12
|
|
13
centos7 和 Ubuntu16 下面,要给 rc.local 加执行权限
chmod 755 /etc/rc.local |
|
14
估计 no such file 是因为你没写完整的目录,或者先 cd 到那个 json 目录下
|
|
15
chmod +x /home/speed
echo '/home/speed' >> /etc/rc.local |
|
16
新建一个`/lib/systemd/system/speed.service`的配置文件
``` [Unit] Description=speed autostart [Service] Type=idle ExecStart=/usr/bin/sh /绝对路径 /speed & [Install] WantedBy=multi-user.target ``` 保存后执行 sudo systemctl daemon-reload sudo systemctl start speed sudo systemctl enable speed 停止重启可以在[Service]里加入相应的命令 |
|
julyclydeApr 22, 2017
18
哈,这是 javaer 常见的问题
|
|
julyclydeApr 22, 2017
19
@Shintaku 应该 Type=Simple 而且不加&
&这个是给 shell 做 job control 用的符号,在 systemd 里是没用的 |