とある実験のーと

趣味ブログ

(備忘録)ラズパイに使用したことで正常な容量を認識しなくなったSDカードのフォーマット(mac)

ラズパイで書き込み途中でSDカードが抜けてしまい、その後正常に起動しなくなった泣。再インストールをかけるためにSDカードでフォーマットを試みるも、このフォーマットに手こずったので覚え書きとして残しておく。

MacでのディスクユーティリティでFAT形式のフォーマットを試みるも、エラーで弾かれた。なんとかMac OS拡張フォーマットでフォーマットするも容量が63MB前後と表示された。使用しているSDカードは16GBである。 Windows機でFAT形式のフォーマットを試みるもフォーマット後の容量は以前63MBのまま。

どうもラズパイで使用していた領域が上手く読み込めなくなっているらしい。 Macに帰り、コマンドプロントを起動、diskutil list コマンドでSDカードの状態を確認。

diskutil list

以下のような文章が出てくる。私の環境ではdisk5がsdカードに該当している。

/dev/disk5 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:     FDisk_partition_scheme                        *16.1 GB    disk5

   1:                 DOS_FAT_16 NO NAME                 62.9 MB    disk5s1

   2:                      Linux                         16.0 GB    disk5s2

 

SDカード自体は故障していないようだ。このLinuxに割り当てられているパーテーションを読み込めなくなったらしい。どこかのブログにこれらの情報をクリアする方法が乗っていたので、試してみた。(大変申し訳ないが、URLがわからなくなった)

まずSDカードのマウントを解除する。

sudo  diskutil umountDisk /dev/disk5

次に、SDカードに空データを書き込む。このコマンドはターゲット(of=)を間違えたらPC自体が死ぬので要注意。disk5の部分はそれぞれの状況で違う。

sudo dd if=/dev/zero of=/dev/disk5

これがとても時間がかかりそうだった。ctl+T で今の状況が確認出来るらしい。途方もないかんじだったので、5分くらいしたらctl+C でコマンドを中断した。

ディスクユーティリティでSDカードの状況を確認してみると、未フォーマット領域として認識されている。

FAT形式でフォーマットを試みるも"名前が無効”というエラーで再び弾かれた。

仕方ないので、MacOS拡張フォーマットでまずフォーマットした→成功。

FAT形式でフォーマット→失敗

 

やけくそでWindows機にSDカードを刺し、こちらでFAT形式でフォーマット→成功。要領も16GBに回復。

 

なぜMacのFATフォーマットが弾かれるか謎だったが、その後ラズパイの再インストールも成功しているので、ひとまず大丈夫そうである。