我的本地机器上有一个 shell 脚本,我必须在远程服务器上执行那个 shell 脚本。我做了一些步骤如下:
- 来自本地机器和远程服务器的配对 SSH 密钥;
ssh user@hostname 'bash - s' < user_add.sh
;
我收到一个错误:
standard in must be a tty
: command not found
bash: line 4: useradd: command not found
Usage: /etc/init.d/vsftpd {start|stop|restart|condrestart|status}
Only root can do that.
chmod: cannot access `/102/prsuser\r': Permission denied
mkdir: cannot create directory `/102/prov/\r': Permission denied
bash: line 8: useradd: command not found
Only root can do that.
chmod: cannot access `/102/prov/PROV_LIS_RESP_DIR\r': Permission denied
chown: cannot access `/102/prov/\r': Permission denied
bash: line 12: /etc/vsftpd/chroot_list: Permission denied
root 登录是不能正常进行的,我们可以通过从普通用户帐户切换为 root 登录su - command
。
所以这是我的疑问,如何在远程服务器上以root身份运行脚本以及在我的脚本(user_add.sh)的起点切换root帐户的脚本是什么?