通过网络使用“tar”创建压缩档案

通过网络使用“tar”创建压缩档案

我想将本地磁盘映像复制到本地网络中的另一台计算机。这是一个很大的目录(大约 15 GB),为了加快速度,我使用了以下小技巧:

cd /Volumes/myserver
tar -cvzf image-dir.gz  /Users/francis/image-dir/

对于解包我可以使用:

cd /
tar -xvzf /Volumes/myserver/image-dir.gz

这个想法是通过在网络上仅发送压缩数据来提高性能。但是,目前尚不清楚 tar 实际上是在数据通过网络发送之前还是之后进行压缩。有人知道吗?

也欢迎替代解决方案。

答案1

这有多有效取决于你的命令在哪儿执行,以及数据在哪儿。

假设:

  1. /卷/我的服务器是网络共享,
  2. /用户/弗朗西斯/图像目录位于客户端的本地驱动器上,并且
  3. 创建和提取命令都在执行客户

我认为你是对的——没有未压缩的数据通过网络。

  • 在创建案例中,您正在从本地驱动器读取未压缩的数据,对其进行压缩,然后将压缩数据写入网络驱动器。网络传输是压缩的。

  • 在提取的情况下,您将从网络驱动器读取压缩数据,解压缩,并将解压缩的数据写入本地驱动器。同样,网络传输是压缩的。

答案2

我见过朋友使用管道tar输出netcat,但我搞不懂语法。手册页和快速网络搜索应该会有所帮助。

相关内容