こんにちは
この記事は、表題の通り、piCorePlayerにおいて、shutdown回路を取り付けてpythonを使ってshutdown用のソフトを書いたのですが、単純なミスによってshutdownが起動してしまい、piCorePlayerが立ち上がらなくなってしまった時の対処方法についての記事です。
あまり普通ではないのですが、SDカード全体をフォーマットし直し、ソフトを再導入する手間を省けることは出来ました。
単純なソフトのミスなので、そのソフトを停止するが一番ですが、Raspberry Pにキーボード、マウス、モニターを接続して起動状態を監視してみると、あっという間にshutdownまで行ってしまい、とても手を出す暇がありません。
もちろん外部からsshでと思ってもOSそのが停止してしまうため手の出しようがありません。
Linuxの動くPCを用意
linux の動くpcを用意します。
その上で、SDカードをマウントして内部の一部でもよいから見えるようにします。私の場合はSDカードリーダを使っているため、これをUSBポートに接続すると、ファイルを見るかとLinux側から聞いてきますので、OKとクリックします。
SDカードのファイルの確認
piCore Playerの場合には、2つファイルが表示されます。
一つは RPCなるものがあり、これをみて見るとmmcblk0p1で必要な情報はありませんでした。
もう一つは mmcblk0p2のようですが、全てが見える訳ではありません。一部が見えるようです。
onboot.lst
そこで、ターミナルを開いてコマンドを叩いてファイルを見えるようにします。( cd やlsなど)
tceというファイルがありましたので、これを開いて見ると中に「Onboot.lst」というファイルがありました。これを例えばmoreで開いて見ると、中にいくつかのtczのファイルがあります。
このonboot.lstには、あとでインストールしたファイル例えばpython.tczとか、python-RPi.GPIO.tczなどが含まれています。これは起動時にここに書かれているファイルを自動的に起動するようです。
ということで、今回はpythonを使ったshutdown用のファイルが問題だったので、pyhton.tczとついでにpytho-RPi.GPIO.tczの二つのファイルを削除しました。
$ sudo nano onboot.lst
でファイルの中を確認して2つのファイルを消去
ところで私はviの使い方をよく忘れるので、nanoを利用していますが、これを常に使えるようにするには
まさにonboot.lstの中にnano.tczを追加して置けば次の起動時から常に使えるようになります。
結果
2つのファイルを消去したあと、SDカードをRaspberry Piに挿入して起動すると、正常に立ち上がりました。
直接、shutdown用のpythonのソフトを消すことは出来ませんでしたが、pythonそのものを消去したため、shutdown用のソフトが起動できなくなり、立ち上がることができるようになったようです。
常にこの方法が役立つ訳ではありませんが、このような方法でも対処できるということを紹介しました。
コメント