我需要将一些 .xml 文件(持续时间为 2016 年 4 月至 5 月)从 Solaris 服务器(服务器 A)传输到 Linux 服务器(服务器 B),其中 Solaris 服务器是编写和执行脚本的主目录。
我为此编写了以下脚本-
#!/bin/sh
ssh [email protected] touch --date "2016-04-01" /tmp/start.tmp
ssh [email protected] touch --date "2016-05-31" /tmp/end.tmp
for i in `find /home/hs/demo*.xml -type f -newer /tmp/start.tmp -not -newer /tmp/end.tmp`
do
scp [email protected]:$i [email protected]:/data/Output
done
但是从服务器 A 执行脚本后,它提示我输入密码(我不希望发生这种情况,因为我需要 Solaris 自动 scp 文件而无需人工干预)
为了执行 scp,我在 Solaris 服务器(服务器 A-10.20.14.49)中使用命令“ssh-keygen -t rsa”创建了密钥,并将公钥复制到 Linux 服务器(服务器 B-10.24.21.11)。
但在从服务器 A 执行脚本后,它仍然提示我输入密码,所以我创建了一个服务器A中的/home/hs/.ssh下的配置文件,以下是其内容:-
Host oa
User dev
HostName 10.24.21.11
IdentityFile ~/.ssh/my_ssh_key
但 Solaris(服务器 A)仍然提示我输入密码。