磁盤讀取---->打包---->壓縮------>傳輸---->解壓縮-->拆包---->落盤
|->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庫找, 以上的是編譯包