ssh 执行sudo 命令 遇到错误
shell
ssh USERNAME@IP "sudo CMD"
ssh
错误一:sudo: sorry, you must have a tty to run sudo ide
解决方式一:ui
ssh 加 -t 参数spa
即:ssh -t USERNAME@IP "sudo CMD"
orm
解决方式二:进程
在/etc/sudoers 配置文件中注释Defaults requiretty这行(这样有缺点,若是ssh带密码会在进程中显示)terminal
错误二:it
ssh加了-t 参数后报错class
Pseudo-terminal will not be allocated because stdin is not a terminal
把-t参数换成-tt 便可
即:ssh -tt USERNAME@IP "sudo CMD"
-tt 在shell脚本调用ssh时要添加参数来指明这是来自脚本的调用。