在LOC上看到有人问两个VPS之间做断点续传有什么方法(原文:http://www.hostloc.com/thread-379204-2-1.html),我根据各位大佬的回复收集整理方法如下(未经测试,留存备用):
方法一:SSH传输法
在你的A-VPS上执行:
tar czf - 要传输的目录 | ssh root@B-VPS的IP -p 端口(比如22) tar xzf - -C /B-VPS上要存放的目录(比如/home/wwwroot)
示例如下:
screen transfer tar czf - /home/wwwroot | ssh root@xx.xx.xx.xx -p 22 tar xzf - -C /home/wwwroot/
方法二:nginx-WGET法
大体过程是在A-VPS上搭建NGINX环境,把要传输的文件打包放在网站根目录下,在B-VPS中运行wget到制定目录下。
另一位大佬给出更简单的方法:
在你要被下载的目录下执行 python -m SimpleHTTPServer 5678
方法三:通过SSH使用rsync方法
假设:A服务器为源服务器,B服务器为目标服务器,需要把A服务器数据同步到B服务。
1、使用SSH登录A服务器,创建无密码的公共SSH keys。
ssh-keygen -f ~/.ssh/id_rsa -q -P ""
cat ~/.ssh/id_rsa.pub
得到公共SSH key,似如下代码:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyISE0v+WzNz4kNcyoVGdcuVKamoq8GbEE/jFefWu47urdYEGuowb6Dt+nJl9ZoaSGNknkoUrzICKbxA0NFsJZL4GrRRAsI54UKo5ggUWek17ald1KmohfezF5BJ8DiPPcq5sZmtg18L6uhMk7sQuwMpUTpuy7YQtuGi2xz9Xh+E/mt7+JNGmI6NsqifTd7SIUNCR5lHd/VVTdNxTAArO8vffuNn5GCenBlfilugKGlehcdV7dJTYXwPtuSdTTocwDBYHTPVtTVBmtpG0882QMr7J2iOpIA2jTNl7jY5mUfV+SYOlcRMSlxhs2W/rtfcytSdv4m8hjwSTQANF1xtSxQ== root@zhujiwiki.com
2、使用SSH登录B服务器
创建authorized_keys文件,存储A服务器的公共SSH key。如果没有authorized_keys文件,则创建此文件。
mkdir ~/.ssh chmod 0700 ~/.ssh touch ~/.ssh/authorized_keys chmod 0644 ~/.ssh/authorized_keys
编辑authorized_keys文件:
vi ~/.ssh/authorized_keys,按i,粘贴A服务器的公共SH key,之后按esc,:wq保存退出。
3、实战,同步文件
把A服务器(aa.aa.aa.aa) /home/wwwroot/letvps.com/html/bus.zip 同步到 B服务器(bb.bb.bb.bb)同样目录下。
使用SSH登录A服务器(aa.aa.aa.aa):
rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress /home/wwwroot/letvps.com/html/bus.zip bb.bb.bb.bb:/home/wwwroot/
文章评论