tar 和 ssh 大文件

tar 和 ssh 大文件

我已经运行以下命令 5 个小时了,并且仍在继续。mysql 有 GB 的数据,但我如何确保以下命令确实在传输数据。有人可以检查正确性吗?

tar -czpf - ./ --exclude mysql mysql-bin* mysql.sock | ssh -lroot xxx.xx.xxx.xx tar -xzpf - -C /var/lib/mysql 

答案1

您可以将pv命令插入到管道中以获取已传输的字节数的报告,如下所示:

tar -czpf - ./ --exclude mysql mysql-bin* mysql.sock | 
pv |
ssh -lroot xxx.xx.xxx.xx tar -xzpf - -C /var/lib/mysql 

这将为您提供如下输出,包括总字节数和当前传输速率:

 202MB 0:00:13 [  17MB/s] [            <=>                                    ]

您也可以直接du -sh在目标目录上运行。

答案2

如果两台服务器之间的网络速度很快,则应尝试不使用压缩(-C)。

为了限制 CPU 的使用,您应该更改使用的默认加密算法,例如使用“-c blowfish”。

(您也可以使用ifstat或iptraf来检查数据交换速度)

相关内容