Page 1 of 1

ラズベリーパイに使用していたSDカードからプログラムのみ取り出すことは可能ですか?

Posted: Sat Sep 07, 2019 3:57 pm
by soushi
RaspberryPi 3B+が起動しなくなりました。
ハードはmicroSDカード(以下カード)を取り替えると通常どうり機能します。
ハードに電源を接続すると赤ランプは点灯するものの、緑ランプが点灯しません。
接続されたディスプレイには起動画面は表示されませんでした。
カード内に保存してあるはずの私が書いたプログラム(主にHome/pi/に保存したもの)を取り出すことは可能ですか?
もしくは、正常に起動させる方法はあるのでしょうか?

ラズベリーパイが起動しなくなったのは以下のプログラムを入力し、再起動した直後からです。

ラズベリーパイで作成したプログラムが電源を入れた後に実行させるために、以下の手順でコードを編集しました。

$ cd ~ / .config
$ mkdir autostart
$ cv autostart
$ nano windowpy.desktop

The following contents were described in windowpy.desktop.
[Desktop Entry]
Type = Application
Name = windowpy
Exec = / usr / bin / python /home/pi/main.py
Terminal = false

$ sudo reboot

補足情報(FW/ツールのバージョンなど)

ラズベリーパイ: Raspberrypi 3B+
使用していたOS : Raspbian Stretch
使用していたmicroSDカード:microSD 200GB (SanDisk)

Re: ラズベリーパイに使用していたSDカードからプログラムのみ取り出すことは可能ですか?

Posted: Sun Sep 08, 2019 6:11 am
by pooka
こんにちは。
新しいmicroSDカードで起動出来るなら古いmicroSDを、
SDカードリーダー(100円ショップかアマゾンでも500円そこそこ)でUSBに繋げれば問題のファイルを取り除いたり、データを取り出したり出来そうな気がします。

Re: ラズベリーパイに使用していたSDカードからプログラムのみ取り出すことは可能ですか?

Posted: Sun Sep 08, 2019 1:21 pm
by matoken
カード内に保存してあるはずの私が書いたプログラム(主にHome/pi/に保存したもの)を取り出すことは可能ですか?
もしくは、正常に起動させる方法はあるのでしょうか?
Raspbian stretch であれば/home の領域はext4フォーマットなのでそれが利用できる環境であれば救えると思います.
pookaさんがおっしゃっているようにmicroSD-USB変換で別のRaspberry Pi システムを利用したり,ext4の利用できるホストマシンから2つ目のパーティションをマウントすればOKです.
ホストマシンがWindowsの場合はext4は標準状態出来ませんが,LiveCD/LiveUSBやVirtualBoxなどの仮想マシンでLinuxを起動してmicroSD cardにアクセスすることも出来ます.

Nautilusなどファイルマネージャが利用できれば`rootfs`, `boot` というファイルシステムが見えると思います.
このうちの`rootfs` が目的のボリュームなのでクリックしてマウントして操作できます.

ファイルシステムが壊れていてマウントできない場合もあります.その場合はfsckコマンドで修復できる可能性があります.
ラズベリーパイが起動しなくなったのは以下のプログラムを入力し、再起動した直後からです。
とのことですので,マウントした後このファイルを一旦削除して起動を試してみると起動するかもしれません.
(手順を見たところいくつかの誤りがあります)