将 30GB 的 tar 文件从一台远程服务器传输到另一台服务器 - 受磁盘空间限制

ale*_*ass 8 files tar wget

我有一个 38GB 的​​“Moodle”tar 文件,需要从旧服务器(共享主机)传输,我们可以将其称为“服务器 A”到新服务器(专用虚拟)或“服务器 B”。如果有帮助,我在 Mediatemple。

我已经将目录压缩并使用 wget 通过 SSH 将其传输到服务器 B,但是 - 这是一个微不足道的 100GB 包,而且我的磁盘容量为 96% - 这意味着我无法在服务器 B 上解压缩文件!有什么方法可以将这个巨大的文件从服务器 A 传输到服务器 B,同时保留权限并尽量减少文件损坏的可能性,这不会使我达到磁盘限制吗?

虽然到目前为止我已经花了很长时间做这件事,但如果有人能提供更好的主意,我愿意放弃我原来的计划——我将不胜感激!

Den*_*ker 21

不要焦油。用于rsync -av在传输文件时保留权限。虽然像 tar 一样,但这不会保留 selinux 上下文。并不是说我认为那很重要。


vor*_*aq7 12

您可能想要购买更多磁盘空间,但假设您不这样做,您可以...

用管道传送 tarball 而不是下载它。

newserver#  ssh olduser@oldserver "cat /path/to/tarball" | tar xf -
Run Code Online (Sandbox Code Playgroud)

或者如果您没有对旧服务器的 SSH 访问权限

newserver# wget -O - http://oldserver/path/to/tarball | tar xf -
Run Code Online (Sandbox Code Playgroud)

或者像丹尼斯说的那样使用 rsync

要有创意。还有其他解决方案我没有提到。