我从本地计算机运行以下命令:
ssh -i key remote_host "nohup sh test.sh > nohup.out 2> nohup.err < /dev/null &"
然后我收到错误:sudo: sorry, you must have a tty to run sudo
我添加了-tt
选项:
ssh -tt -i key remote_host "nohup sh test.sh > nohup.out 2> nohup.err < /dev/null &"
我检查了遥控器,test.sh
没有运行(没有进程ID)。
我取出了nohup
,一切运行正常,ssh -tt -i key remote_host&#34; sh test.sh&#34;但我需要使用nohup
。有人能帮我吗?非常感谢!
一个remote_host:test.sh脚本:
#!/bin/bash
sudo iptables -A OUTPUT -p tcp --dport 443 -j DROP
sleep 30
sudo iptables -D OUTPUT -p tcp --dport 443 -j DROP
答案 0 :(得分:0)
sudo
可能会尝试提示您输入密码。您需要在remote_host的sudoers文件中设置NOPASSWD,或者您可以使用expect