在rc.local中我有
sudo -H -u myUser -s -- "cd /home/myUser/parlar && /usr/local/bin/meteor &"
我想测试它,但是当我用
执行时myUser:~$ sudo service rc.local start
/bin/bash: cd /home/myUser/parlar && /usr/local/bin/meteor &: No such file or directory
如果我执行命令
cd /home/myUser/parlar && /usr/local/bin/meteor &
它有效
如何执行rc.local以使其更改为相关目录,并以请求的用户身份运行命令?
答案 0 :(得分:1)
在--
之后你给sudo的任何论据被视为命令&它的论点。
没有命名/可执行文件" cd / home / myUser / parlar&&的/ usr / local / bin中/流星&#34 ;.但是,您可以启动bash&在该bash shell中运行该命令。
e.g。
sudo -H -u myUser -s -- bash -c "cd /home/myUser/parlar && /usr/local/bin/meteor &"
由于第一个命令是cd
,这种替代方法也可以起作用:
sudo -H -u myUser -s -i PWD=/home/myUser/parlar -- /usr/local/bin/meteor
答案 1 :(得分:0)
要查看rc.local本身的日志,最好运行以下命令:
**systemctl restart rc-local.service**
**systemctl status rc-local.service**
也许可以帮助您更好地排除故障