LoginSignup
3
6

More than 5 years have passed since last update.

Dirty bitがセットされて起動できなくなったRaspberry PiのSDカードをfcskコマンドで修復してみた

Posted at

いきさつ

PICで作成中のソフトにSPI I/Fを加えるため、デバッグのお相手としてRaspberry Piを引っ張り出して、環境(Python 3.6, wiringPi, etc.)を整え通信の確認までできたまではよかったのですが、週末続きをやろうとしたら起動しなくなってしまいました。:cry:

バックアップを取っていなかったので、RaspbianのイメージをSDに書いて環境をもう一度つくるのは面倒いやだなということで、とりあえずLinuxホストでfsckしてみることにした。

Linuxホストは Ubuntu 14.04 LTS です。

1. SDカードのデバイスを確認

~$ ls -l /dev/sd*
brw-rw---- 1 root disk 8,  0  2月 13 12:16 /dev/sda
brw-rw---- 1 root disk 8,  1  2月 13 12:16 /dev/sda1
brw-rw---- 1 root disk 8,  2  2月 13 12:16 /dev/sda2
brw-rw---- 1 root disk 8,  5  2月 13 12:16 /dev/sda5
brw-rw---- 1 root disk 8, 16  2月 13 12:43 /dev/sdb
brw-rw---- 1 root disk 8, 17  2月 13 12:43 /dev/sdb1
brw-rw---- 1 root disk 8, 18  2月 13 12:43 /dev/sdb2

/dev/sdbが SDカード
/dev/sdb1 が Bootパーティション
/dev/sdb2 が ext4パーティション

2. Bootパーティションにfsckをかけてみる

~$ sudo fsck /dev/sdb1
fsck from util-linux 2.20.1
fsck.fat 3.0.26 (2014-03-07)
0x41: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt.
1) Remove dirty bit
2) No action
?

dirty bitがセットされている?
これで起動できないのか??

削除してみましょう。

? 1
Leaving filesystem unchanged.
/dev/sdb1: 149 files, 42667/83705 clusters

できない...:cold_sweat:

ここで調べてみると、-w -a or -w -rオプションをつけてみるといいらしいことがわかりました。

参考になったのは次のふたつ

3. -w -r オプションを加えて試してみる

~$ sudo fsck -w -r /dev/sdb1
fsck from util-linux 2.20.1
fsck.fat 3.0.26 (2014-03-07)
0x41: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt.
1) Remove dirty bit
2) No action
? 1
Perform changes ? (y/n) y
/dev/sdb1: 149 files, 42667/83705 clusters

できたかも

4. ext4パーティションにfsckをかけてみる

~$ sudo fsck /dev/sdb2
fsck from util-linux 2.20.1
e2fsck 1.42.9 (4-Feb-2014)
rootfs: clean, 148774/474832 files, 1181603/1930752 blocks

こちらは大丈夫だったみたい

SDカードをRaspberry Pi B+に挿入し電源オン

無事起動できました。:grinning:

今度はバックアップを取っておきましょう。

3
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
6