【发布时间】:2021-07-19 21:55:33
【问题描述】:
我正在尝试编写一个 bash 脚本来登录 ssh 并登录到 sudo
SSH 登录工作正常,但我在登录 sudo 时遇到问题。这是我的命令
ssh -tt empId@env.linuxbox.com << EOF
echo "Password\n" | sudo -S su - airbust
cd ../builds
EOF
i)我收到错误,因为提供了空密码
ii)我提供的用户名是'airbust',而它以用户名作为'empId'
S su - airbustpost-lapp1941(Linux-RENO::TEST):/tmp]$ echo "Password\n" | sudo -
[sudo] password for : Sorry, try again.
[sudo] password for empId:
sudo: no password was provided
sudo: 1 incorrect password attempt
【问题讨论】:
-
还是这个? *.com/questions/233217/…
-
@NicoHaase 我无法使用 visudo,因为我无法在文件中对密码进行硬编码。我还尝试了 echo myPassword | sudo -S su - airbust 类似于 sudo -S ls /tmp 。但是切换用户没有像 ls 命令那样执行。所以我仍然面临这个问题
-
注意,当您运行
sudo时,您必须提供当前用户的密码,所以在您的情况下,sudo 需要 empId 的密码。 -
@meuh 当我在终端中手动运行它时,我提供了 airbust 的密码。例如: sudo su - airbust ; [sudo] airbust 的密码:密码