web-dev-qa-db-ja.com

ddとpvを組み合わせる場合の構文

で:

Sudo dd if=/dev/sda bs=64k | pv --size 1.5t | dd of=/dev/sdb

Ddのブロックサイズは、図のように入力後の左側にありますか、それとも出力後の右側にありますか?

パイプビューアのサイズオプションで、値の前に等号がないのは正しいですか?上記のように10進値を使用しても大丈夫ですか?

3
Less Static

レビューの恩恵を受ける可能性のあるいくつかの問題。

Sudo dd if =/dev/sda bs = 64k | pv --size 1.5t | dd of =/dev/sdb

まず、ブロックサイズを(大幅に)増やし、それに応じてスループットを増やすことができます。私はよくbs=32Mを使います。 ddへのパラメーターの順序は重要ではないため、次のようになります。

Sudo dd if=/dev/sda bs=1M

次に、--sizeをequalsの有無にかかわらず指定するかどうかは関係ありません。長い引数(二重ダッシュで始まるもの)は通常、うるさくありません。ただし、pvを簡単に試してみると、引数は整数でなければならないことがわかります。そう:

pv --size 1500g

最後に、ddに大きな(出力)バッファーを指定する価値があり、おそらくroot権限で実行する必要があります。大きなバッファを使用しているため、書き出す前に完全にいっぱいになっていることを確認する価値があります。だからあなたはこれで終わります:

Sudo dd of=/dev/sdb bs=1M iflag=fullblock

すべてを一緒に入れて、

Sudo dd if=/dev/sda bs=1M | pv --size 1500g | Sudo dd of=/dev/sdb bs=1M iflag=fullblock
5
roaima