我没有在我的两台服务器 a 和 b 之间启用无密码 ssh。所以我使用 sshpass 从 a 连接到服务器 b。
我需要在服务器 b 的 /etc/hosts 中添加主机条目。但是我登录到服务器 b 的用户是非 root 用户,但具有编辑 root 拥有的文件的 sudo 权限。
如何在使用 sshpass 时通过 shell 脚本将主机条目从服务器 a 添加到服务器 b 的 /etc/hosts。
这是尝试过的脚本:
#!/bin/bash
export SSHPASS="password"
SSHUSER=ciuser
WPC_IP=10.8.150.28
sshpass -e ssh -o UserKnownHostsFile=/dev/null -o 'StrictHostKeyChecking no' $SSHUSER@$WPC_IP "echo test >> /etc/hosts"
输出:
bash test.sh
Warning: Permanently added '10.8.150.28' (RSA) to the list of known hosts.
bash: /etc/hosts: Permission denied
谢谢你。