这可能是一个愚蠢的问题。我想使用scp将数千个文件从远程服务器复制到我的本地计算机。我直接在远程服务器的命令行上运行以下命令(在使用ssh登录之后)
for file in $(ls <SOURCE_DIR>)
do scp $file <LOCAL_ID>@<LOCAL_IP_ADDRESS>:<TARGET_DIR>
done
但是在运行这个命令之后,我意识到<TARGET_DIR>属于根用户,所以for循环请求一个密码,如果我输入密码,它将抛出一条Permission denied错误消息。这在每个循环周期中一次又一次地重复。有
当Linux机器$IP在登录后询问密码时,以下expect脚本工作正常
但在某些情况下,某些Linux机器不需要ssh的密码(我们可以不使用密码登录),
因此我需要更改我的expect脚本,以便支持没有密码的计算机
请建议如何适合我的期望脚本,以支持机器与密码和机器没有密码
* target of the following expect script is to check the hostname on remote Linux machine
expect_test=`cat << EOF
set timeout -1
spawn ssh $IP hostna
是否可以在没有密码输入的情况下从本地登录到远程Linux PC SSH (而不是root用户)?我的意思是-在两个点上使用/etc/阴影作为密码,登录到具有相同用户凭据(在两个系统上登录和密码相同)的远程SSH。
要点-不是使用基于密钥的身份验证,而是使用加密密码(SHA-512)在远程SSH上登录。