車内で使っていたラズパイにリモートでアクセスをしていたら、突然アクセスが出来なくなりました。
最初はネット環境の問題だと思っていたのですが、家のネット環境にもつながらずHDMI出力もされなかったため、ラズパイが死んだと想定し色々試したメモを残しておきます。
死んだときのラズパイの状態
私の場合はCAN HATを付けていたのですが、CAN HATの電源ランプは付いているもののラズパイ本体のランプが点いて無いという状態でした。
このような状態なので電源系は恐らく問題無いと推定しました。
また、HDMI出力されない状況については、電源ランプが点いて無いという事からラズパイが起動していないことが原因だと推定しました。
CAN HATなど外して電源を入れてみる
私のラズパイにはCAN HATや加速度センサーを取り付けていました。
もしかしたらこれらのものが悪さしている可能性があったので、取り外して電源を入れてみました。
結果としては変わらず電源ランプが消灯したまま、HDMI出力もされない状況です。
SDカードにOSを再インストールしてみる
次にそもそもOSが起動していないのが原因と考え再度ラズパイをインストールしてみようとしました。
ラズパイのOSインストールを久しぶりに実施するため、下記サイトを参考にしながら進めました。また、今後の備忘録として私のメモも残しておきます。
ImagerをダウンロードしてOSをSDカードに書き込むする
最初に下記ラズベリーパイの公式サイトから Imagerをダウンロードします。(私はWindowsなのでWindows版をダウンロードしました。)
Imagerのダウンロードが終わったら起動し、「OSを選ぶ」を選択します。
次にダウンロードするOSを選択します。
特に特別な使用をしないのなら下記「Rasberry Pi OS」を選択します。(今回ラズパイZeroのセットアップなので、割り切ってLiteでもよかったかもしれないですが、通常版をインストールしました。)
次にOSを書き込むSDカードがささってるストレージを選択します。
このまま書き込むでもいいですが、歯車アイコンをクリックして設定を確認してみます。
その際にデータが完全に削除されるという警告が出ますが、「はい」をクリックします。
そしてここで気が付いたのですが、SDカードにOSを書き込むことが出来ません。。。
ここで他のラズパイで使ってるラズパイOSが入ったSDカードがあるのを思い出し、
試しに使ってみたところ、無事起動しHDMI出力されるのを確認できたのでSDカード破損が原因と判明。
これでSDカードが壊れたことが今回の原因だという事が分かったので、Amazonで下記microSDを購入しました。
届いたSDカードを使ってやり直したところ問題なく書き込みが完了しました。
届いたSDカードを使ってやり直したところ問題なく書き込みが完了しました。
OSを書き込んだSDをラズパイに挿して電源を入れたところ、無事起動することが出来ました。(普通に起動したらWi-Fi設定を再度やり直したので、イメージ書き込んだ際に設定した設定が保存されてなかったかもです。。。)
イメージの書き込み時にWi-Fiの設定などもする方法について参考になりそうな記事を見つけたので、これから試してみる方は参考にしてみてください。
今回SDカードが壊れた原因(推定)
色々調べていると電源遮断(通称"電プチ"とかいうみたいです)によってSDカードのファイルシステムが破損するというのがあるみたいです。
私の場合はラズパイの電源を車両のシガソケ経由でとっていたため、エンジンを切ったタイミングで電源遮断が起きるという状態で使用していたのでこれが原因だと思います。。。
下記のように産業用のSDカードがあり、もし電源遮断が発生し、エラーが発生しても監エラーを検知してデータを逃すという処理をしてくれるSDカードもあるみたいですが、値段が高いです。。。
今後もシガソケ経由で電源供給予定なので、対策を色々調べたところ
overlayfsというものを使ってファイルシステムをRead Onlyにする対策がありそうです。
(SDカードに書き込み時に電源遮断が発生するとファイルが破損するため、読み込みしかできないようにする設定みたいです。)
次回はoverlayfsとは何か調べてラズパイの設定をしていきたいと思います。
↓次回記事
まとめ
ラズパイが死んだ原因はSDカード破損でSDカードを新しく購入し、OSを再インストールしたら無事起動させることが出来ました。
(色々調べてみると一番多い故障みたいですね)
また、SDカードが破損する原因として電源遮断が一番多いらしく、次回は電源遮断対策としてoverlayfsについて勉強し、実際にラズパイに設定していこうと思います。
0 件のコメント:
コメントを投稿