Linux 使用 Rsync 传输迁移,使用密钥连接
我们举例,有两台服务器 A 192.168.0.1 ,服务器 B 127.0.0.1 ,注意为了安全,这两台前提已经都使用密钥作为登录
目的:将 A 的文件传输到 B ,这里使用 B 连接到 A 然后迁移数据
两台服务器需要都安装 rsync
#Debian apt install rsync -y #Centos yum -y install rsync
重点两步:
1.登录服务器 B ,将 B 的公钥 id_rsa.pub 内容复制,然后添加到 A 的密钥目录下的 authorized_keys 文件中,换行粘贴进去即可
2.然后使用 B 连接 A 传输数据到 B ,重点,这里需要用到 /root/.ssh/id_rsa 是 B 服务器的私钥文件
rsync -avz --progress -e "ssh -i /root/.ssh/id_rsa" root@192.168.0.1:/www/wwwroot/web /www/wwwroot/
注意以上的文件路径 /www/wwwroot/web /www/wwwroot/ 是指将远程 A 的 web 文件夹增量传输到 B 的 /www/wwwroot/ 下面
如果 /www/wwwroot/web/ /www/wwwroot/ 则是将远程 web 文件里面的内容传输到 B 的/www/wwwroot/下面,末尾这个斜杠 '/' 很重要
这点使用和 Rclone 都很类似
传输速率和服务器自身环境有关,建议安装 screen 开启一个后台慢慢传输