dd: 複数のディスクに書き込みますか?

dd: 複数のディスクに書き込みますか?

まったく同じフォーマット、同じサイズ、同じブランドの SD カードが 2 枚あります。同時にと にddイメージを作成したいと思います。 疑似コード/dev/disk2/dev/disk3

sudo dd bs=1m if=/Users/masi/2016-05-10-raspbian-jessie.img of={/dev/disk2,/dev/disk3}

dd1 つの入力から複数の出力 SD を作成するにはどうすればよいでしょうか?

答え1

試してみるといいdcfldd
これは の拡張バージョンでありgnu dd、複数のファイルまたはディスクに同時に出力できます。

dcfldd if=masi.img of=/dev/disk2 of=/dev/disk3 of=/dev/disk4

答え2

  1. 借用ドン・クリスティの答えを使用するteeが、または ddを使用しないバッシュイズム:

    sudo tee /dev/disk2 /dev/disk3 > /dev/disk4 < masi.img
    
  2. Debianpeeもっと見るパッケージ:

    sudo dd if=masi.img | \
      pee "dd of=/dev/disk2"  "dd of=/dev/disk3"  "dd of=/dev/disk4"
    

    bash、、kshまたは を使用する場合zsh、次のように省略できます。

    sudo dd if=masi.img | pee "dd of=/dev/disk"{2..4}
    

    ddあるいは、(の便利な関数が必要ない場合) 次のようにもできます。

    sudo pee "dd of=/dev/disk"{2..4} < masi.img
    

    peeは便利です。必要に応じて、(各引用符で囲まれた引数内に)追加の異なるddオプション、さらには各出力デバイスに合わせて個別に調整された他のパイプやフィルターを含めることができます。

どちらの方法でも、出力ディスクの数を無制限に拡張できます。

答え3

teeまた、および でも可能ですprocess substitution:

dd if=/dev/sda | tee >(dd of=/dev/sdb) >(dd of=/dev/sdc) | dd of=/dev/sdd

答え4

7年ぶりにこの質問に戻る

parallelこれは素晴らしいツールです

このスニペットを使用してディスクをゼロにしますが、イメージディスクに簡単に変更できます。

parallel dd if=/dev/zero of={} status=progress ::: /dev/nvme{0,1}n1

関連情報