tar+pigz+ssh实现大数据压缩传输

时间:2022-05-07 22:56:25

磁盘读取---->打包---->压缩------>传输---->解压缩-->拆包---->落盘

|->tar     |->gzip      |->ssh      |->gzip   |->tar

比如我要将本地的test目录拷贝到“目标IP”的的data目录,则命令如下:

tar -c test/ |pigz |ssh -c arcfour128 目标IP "gzip -d|tar -xC /data"

或者

tar -c test/* |pigz |ssh -c arcfour128 目标IP "gzip -d|tar -xC /data"

如果不需要解压,则命令变为:

tar -c test/ |pigz |ssh -c arcfour128 目标IP "cat >/data/test.tar.gz"

注:因为采用了流式压缩,解压过程必须加上-i参数,及tar –ixf /data/test.tar.gz(面对大数据的时候)

执行命令的过程中如果抛出:-bash: pigz: command not found

解决: 安装pigz(我提供了两个版本, 随便安装一个就行, 我之前安装的是yum版)

http://files.cnblogs.com/files/chenglee/pigz-2.3.4.tar.gz

还有一个是redhat的rpm包提供的, 需要的可以上yum库找, 以上的是编译包