※記事のURLの一部は広告を含みます。

画像のうち一部が正しく表示されていない期間がありました。ご迷惑をおかけし申し訳ありません。

【M1 Mac】ラズパイで「unable to read partition as fat」となる原因を解決する【Raspberry Pi Imager】の絵文字

【M1 Mac】ラズパイで「unable to read partition as fat」となる原因を解決する【Raspberry Pi Imager】

2023-01-28

2023-01-28

はじめに

こんにちは、こふです。

Debian をラズパイの起動に使うマイクロ SD カードに書き込んでインストールしたかったのですが、トラブっていたので解決策を共有します。

環境

再現性のためにハードウェア・ソフトウェアもまとめます。

対処法

結論は、diskutilsudo diskutil eraseDisk FAT32 UNTITLE MBRFormat /dev/disk4のようにしてまさしくフォーマットでき、正常にラズパイが起動できました。

原因やコマンドの詳細は順に説明します。

原因・うまく行かないエラーを探る

Raspberry Pi Imagerというソフトの FAT32 フォーマットがまさしく動かなかったと思われます。

画像は残っていないのですが、同じ状況の画像がこれです。

引用元:https://github.com/DeskPi-Team/deskpi/issues/70

M1 Mac を使っていることが 関係しないことない かもしれません(フォーマットに CPU アーキテクチャ絡むかは勉強足らずで不明です)。

SD カードを 2 枚ほど用意して試しても記事タイトルのエラーが出るため、これは SD カードが壊れているわけではない と確信しました。

また、ネット上のRaspberry Pi Imagerを利用した記事は WindowsIntel CPUMac の状況が多いため、M1 Mac が原因ということもなくはないと思いました。

まとめると関係事項は次の通りです。

  • Raspberry Pi Imagerの FAT32 フォーマットが正常に動かない
  • SD カードは 2 枚試して動かない+通常の読み取りは可能であるため関係ない
  • OS の Image は複数種類試してエラーなのでインストールする OS も関係ない
  • ラズパイは壊れていないと仮定
  • M1 Mac の Raspberry Pi Imager のフォーマットに不具合がある?

diskutil で対処する

ひとまず、フォーマットを正しく行う必要があるためコマンドラインからやります。

Raspberry Pi Imagerというソフトの FAT32 フォーマットがまさしく動かなかったと思われるためです。

該当するメモリを特定する

terminal
1diskutil list 2~~~~~~~~~~~~~~~ 3/dev/disk(n) (external, physical): 4 #: TYPE NAME SIZE IDENTIFIER

大抵は物理的な外部接続のメモリが(external, physical)の欄に該当します。

その中から SIZE を見てメモリを特定してください。そのIDENTIFIERは一瞬メモして覚える必要があります。

/dev配下のどのディスクかも一瞬覚えてください。

コマンドでフォーマットする

次にコマンドから FORMAT します。

terminal
1sudo diskutil eraseDisk FAT32 ANY_NAME_IS_OK MBRFormat /dev/disk(n)

ディスク書き込みなので管理者権限必要です。自分で行った記録も貼り付けますね。

terminal
1~/ sudo diskutil eraseDisk FAT32 UNTITLE MBRFormat /dev/disk4 2Password: 3Started erase on disk4 4Unmounting disk 5Creating the partition map 6Waiting for partitions to activate 7Formatting disk4s1 as MS-DOS (FAT32) with name UNTITLE 8~~~~~~ 9Mounting disk 10Finished erase on disk4

このあとRaspberry Pi Imagerで適宜 OS を選択して書き込んであげれば OK で起動できました。

おわりに

これで起動して色々できることが増えました。

参考




共有する