我有 2 台 Linux Centos 服务器。
第一个是 6.7,第二个是 7。
如何将/home/sv1/public_html
服务器 1 中的所有文件和文件夹传输到/home/sv2/public_html
服务器 2?
数据有 6TB,我无法使用 FTP 移动它们。
谢谢
答案1
在 server1 中使用 rsync
rsync -dr /home/sv1/public_html -e ssh user@server2:/home/sv2/public_html -v
由于它有 6GB,因此需要一段时间。您应该考虑使用screen
,并在您不在服务器上时保持它正常工作。
答案2
假设服务器 2 上有一个具有适当权限的用户,并且服务器 1 上的用户 1 拥有适当的私钥:在服务器 1 上。
cd /home/sv2/public_html
scp -i /home/user1/.ssh/keyfile user@server1:/home/sv1/public_html .
答案3
您应该考虑使用 rsync,因为它对于传输如此大量的数据更方便,特别是因为 rsync 可以继续部分传输文件(例如在网络超时的情况下)。
rsync -avzP /home/sv1/public_html/ -e ssh user@server2:/home/sv2/public_html/
-A- 存档模式(保留权限、所有权等)
-v- 打印详细传输状态
-z- 即时压缩,实现更快的传输
-P- 保留部分传输的文件以便从上次中断的地方恢复传输。