はじめに
こんにちは、こふです。
Debian
をラズパイの起動に使うマイクロ SD カードに書き込んでインストールしたかったのですが、トラブっていたので解決策を共有します。
環境
再現性のためにハードウェア・ソフトウェアもまとめます。
- Macbook Air M1, 2020
- Mac OS 13.1
- スペックは関係ないです
- SD カード
- Raspberry Pi Imager v1.7.3
- Raspberry Pi4 ModelB 4GB ラズベリーパイ 4 技適対応品【RS・OKdo 版】
- Debian インストールパッケージ
対処法
結論は、diskutil
でsudo diskutil eraseDisk FAT32 UNTITLE MBRFormat /dev/disk4
のようにしてまさしくフォーマットでき、正常にラズパイが起動できました。
原因やコマンドの詳細は順に説明します。
原因・うまく行かないエラーを探る
Raspberry Pi Imagerというソフトの FAT32 フォーマットがまさしく動かなかったと思われます。
画像は残っていないのですが、同じ状況の画像がこれです。
M1 Mac
を使っていることが 関係しないことない かもしれません(フォーマットに CPU アーキテクチャ絡むかは勉強足らずで不明です)。
SD カードを 2 枚ほど用意して試しても記事タイトルのエラーが出るため、これは SD カードが壊れているわけではない と確信しました。
また、ネット上のRaspberry Pi Imagerを利用した記事は Windows
・Intel CPU
の Mac
の状況が多いため、M1 Mac が原因ということもなくはないと思いました。
まとめると関係事項は次の通りです。
- Raspberry Pi Imagerの FAT32 フォーマットが正常に動かない
- SD カードは 2 枚試して動かない+通常の読み取りは可能であるため関係ない
- OS の Image は複数種類試してエラーなのでインストールする OS も関係ない
- ラズパイは壊れていないと仮定
- M1 Mac の Raspberry Pi Imager のフォーマットに不具合がある?
diskutil で対処する
ひとまず、フォーマットを正しく行う必要があるためコマンドラインからやります。
Raspberry Pi Imagerというソフトの FAT32 フォーマットがまさしく動かなかったと思われるためです。
該当するメモリを特定する
diskutil list
~~~~~~~~~~~~~~~
/dev/disk(n) (external, physical):
#: TYPE NAME SIZE IDENTIFIER
大抵は物理的な外部接続のメモリが(external, physical)
の欄に該当します。
その中から SIZE
を見てメモリを特定してください。そのIDENTIFIER
は一瞬メモして覚える必要があります。
/dev
配下のどのディスクかも一瞬覚えてください。
コマンドでフォーマットする
次にコマンドから FORMAT
します。
sudo diskutil eraseDisk FAT32 ANY_NAME_IS_OK MBRFormat /dev/disk(n)
ディスク書き込みなので管理者権限必要です。自分で行った記録も貼り付けますね。
~/ sudo diskutil eraseDisk FAT32 UNTITLE MBRFormat /dev/disk4
Password:
Started erase on disk4
Unmounting disk
Creating the partition map
Waiting for partitions to activate
Formatting disk4s1 as MS-DOS (FAT32) with name UNTITLE
~~~~~~
Mounting disk
Finished erase on disk4
このあとRaspberry Pi Imagerで適宜 OS を選択して書き込んであげれば OK で起動できました。
おわりに
これで起動して色々できることが増えました。
参考
- 非公式ですが
diskutil
の詳細記事 - Mac Terminal diskutil Command Examples – The Geek Diary