sshで帯域制限(pvコマンド)

scpなら-lオプションで帯域制限出来るので、絶対sshでもあるはず!

と思って、manやらnetやら調べたけど無さそう。

なんでそんな必要があるかと言うと、自分の場合、リモートの運用中のサーバにsshでログインして、tarでまるごとシステムのコピーを取得するなんてことが多々ある。

その場合、実運用中のサーバからデータを取るので、なるべく運用中のサーバやネットワークに負荷を掛けずに持ってきたい。

で調べた結果pvっていうコマンドを使えば良さそう。

debian/ubuntuならapt-getで一発インストールだと思う。Red HatやCentだと標準レポジトリには無いと思う。

 

 

 

別にsshに限った話ではなく、標準入出力の帯域制限を行ってくれて、しかもプログレスバーで進捗とかも見せてくれる。

帯域制限は-Lオプションで指定できる。kとかmとかgとか

pvの引数にファイルを渡してやると

 

 

 

パーセンテージまで出してくれる。たぶん元ファイルのサイズが分かるから。

パイプで挟まれると

 

 

元ファイルのサイズがわからないので、パーセンテージは出せないが帯域制限はかかっている。

 

sshで使う時も、パイプであれば何ら変わらない。

 

 

 

うーん。sshだけじゃなくて何かと便利っぽい。