Edited at

MacでOSイメージをSDカードに焼く


はじめに


  • Raspberry Piで使うためSDカードにOSイメージを書き込もうと思ったのですが手順を忘れかけていました

  • そう頻繁にやる作業でもないので次回も忘れるであろうと思い手順を書いておくべきだと思いました

  • 環境はMacです


ディスクを特定する


  • SDカードを指す前にdiskutilコマンドを実行する

$ diskutil list

/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.3 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_APFS Container disk1 371.0 GB disk0s2
3: Apple_HFS BOOTCAMP 128.3 GB disk0s3

/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +371.0 GB disk1
Physical Store disk0s2
1: APFS Volume Macintosh HD 119.7 GB disk1s1
2: APFS Volume Preboot 43.9 MB disk1s2
3: APFS Volume Recovery 1.0 GB disk1s3
4: APFS Volume VM 3.2 GB disk1s4


  • SDカード指して再度diskutilコマンドを実行


$ diskutil list
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.3 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_APFS Container disk1 371.0 GB disk0s2
3: Apple_HFS BOOTCAMP 128.3 GB disk0s3

/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +371.0 GB disk1
Physical Store disk0s2
1: APFS Volume Macintosh HD 119.7 GB disk1s1
2: APFS Volume Preboot 43.9 MB disk1s2
3: APFS Volume Recovery 1.0 GB disk1s3
4: APFS Volume VM 3.2 GB disk1s4

/dev/disk2 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *15.5 GB disk2
1: Windows_FAT_32 boot 43.5 MB disk2s1
2: Linux 15.4 GB disk2s2


  • 新たに表示されたディスクが対象のSDカードです


    • このケースではdisk2ですね




ディスクのアンマウント

diskutil unmountDisk /dev/disk2


OSイメージ書き込み


  • ddコマンドでイメージを書きます


    • Macを含むBSD系のOSではrを頭につけるとシーケンシャルアクセスになるようなのでrdisk2のように指定しましょう


      • disk2とするとランダムアクセスになり非常に遅くなります

      • 試しにとあるイメージを書き込んでみたら処理時間が6倍もかかってしまいました





  • ハイスペックな端末の場合はBSの値を大きくすると処理時間が早くなるかもしれません


imgファイルの場合

sudo dd if=xxxxxxxx.img of=/dev/rdisk2 bs=16m


xzファイルの場合

xzcat xxxxxxxx.img.xz | sudo dd of=/dev/rdisk2 bs=16m


gzファイルの場合

gunzip -c xxxxxxxx.img.gz | sudo dd of=/dev/rdisk2 bs=16m