0

我有大量文件想从一台服务器移动到另一台服务器。

在不使原始服务器超载的情况下,最好的方法是什么?

我是否应该对每个文件夹进行 tar,然后下载到我的计算机,然后再上传到另一台服务器?

这样做的 SSH 命令是什么?

或者有没有更好的方法来做到这一点?

谢谢安迪

4

3 回答 3

4

来自 SCP 参考手册:

任何文件名都可以包含主机和用户规范,以指示文件将被复制到该主机/从该主机复制。允许在两个远程主机之间进行复制。

-p 保留原始文件的修改时间、访问时间和模式。

-r 递归复制整个目录。

scp -rp username@source:/foldername/ username@destination:/foldername

使用 tar 创建一个文件可能会稍微减少负载,因为在一个文件上不会有太多的文件处理开销...ymmv。使用 gzip 压缩会减少带宽,但会在源服务器上增加更大的负载来压缩文件。

于 2012-12-12T09:32:04.353 回答
0

我认为您对“服务器超载”的担忧是没有根据的。移动文件的任何方式都会稍微加载服务器,但这是微不足道的。

tar首先对文件进行ing 和gziping 会减少网络流量,但是taring 和gziping 的操作将需要第一台服务器的工作。

简单tar的 ing 可能没有多大价值——它是一个大文件而不是许多小文件(总大小相同)。

下载然后上传几乎没有实际价值——除非你也想要一个副本——你到每台服务器的网络连接可能比两台服务器之间的网络连接更差。

不过,这对于 SuperUser 来说更像是一个问题。

于 2012-12-04T22:40:17.523 回答
0
  1. tar+gzip/bzip2 和 scp 复制

  2. rsync(它可以通过 ssh 工作)

于 2012-12-12T08:35:02.720 回答