无法通过 ssh 命令执行 shell 脚本

无法通过 ssh 命令执行 shell 脚本

我有一个脚本,可以将 shell 脚本从一台服务器传输到另一台服务器。传输的脚本将更改我的用户的密码。我能够传输脚本,但无法使用 ssh 执行它。这是我的脚本:

#!/bin/sh
USERNAME=my_user
HOSTS="some.thing.host"
SCRIPT="/bin/sh /home/admin/my_user/tryscp.sh"
PASSWORDS=("init")
for HOSTNAME in ${HOSTS} ; do
  /usr/local/bin/sshpass -p ${PASSWORDS[i]} scp /home/my_user/tryscp.sh [email protected]:/home/admin/my_user
  /usr/local/bin/sshpass -p ${PASSWORDS[i]} ssh -l ${USERNAME} ${HOSTNAME} "${SCRIPT}"
done

scp 部分可以正常工作,但远程服务器上执行脚本的 ssh 却无法正常工作。我收到此错误:

"/bin/sh" isn't allowed to be executed.

通过ssh远程执行的脚本内容如下:

#!/bin/sh
sudo -S echo -e "old_password\nnew_password\nnew_password" | passwd

在此先感谢您的帮助!

相关内容