【发布时间】:2018-05-07 13:25:06
【问题描述】:
我需要远程启动执行 sudo 任务的 bash 脚本,例如 chmod 和 ntpdate 以及回显到 gpio。
cron 作业可能是解决其中一些问题的最佳解决方案,但 cron 让我很头疼。如果可以的话,我想通过这个场地......
我已经确认我的脚本可以在本地运行(我可以通过 ssh 进入机器并运行它们而不会出现问题。)
但是,如果我尝试像这样远程运行它们:(这是在 C++ 系统调用中)
ssh user@pc 'bash -s' /user/myScript.sh
带有 sudo 的命令失败。
sudo chmod 失败:不存在 tty 且未指定 askpass 程序 回显到 gpio 失败:写入错误:设备或资源忙 sudo ntpdate 失败:不存在 tty 且未指定 askpass 程序
谁能帮忙解释一下,或者帮我确定这里发生了什么?
我愿意接受创可贴和不同的方法,谢谢!
【问题讨论】:
-
如果
myScript.sh尝试从 其 标准输入读取任何内容,您的尝试也会失败,因为该文件是它自己的标准输入。您最好弄清楚cron的问题所在并加以解决,而不是使用ssh添加一层间接层。 -
我在一个无法接收 cron 'mail' 的隔离环境中工作。你对我有什么建议吗,与 cron 故障排除有关吗?谢谢!
-
不,但有人可能;在完全放弃
cron之前先问那个问题。