強制關機後無法成功啟動至桌面

強制關機後無法成功啟動至桌面

我正在運行 Raspbian Wheezy。從昨天開始,我在強制關機(拔掉電源線)後無法啟動我的 RPi。從那時起,它開始如下:http://pastebin.com/QiEbda2y

請注意接下來的幾行:

  [    2.176606] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
...
  [    2.220626] Starting init: /etc/init exists but couldn't execute it (error -13)

然後它開始 sh。當我嘗試運行 bash 時,它會給出以下警告:

bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
root@(none):/#

請注意,它說root@(none)

此外,(在某種程度上是預期的)引導驅動器未安裝,並且(完全不是預期的)根驅動器處於唯讀模式。我可以使用以下命令將它們安裝在讀寫模式中:

fsck /dev/mmcblk0p1 (needed because dirty bit is set)
mount /boot
mount -o remount,rw /

當我運行 ps 時,它告訴我運行mount -t proc proc /proc.使用 ifup/ifdown 也需要這麼做。

如果我不在 eth0 上使用 ifdown/ifup,我的 ifconfig 是空的,但僅使用 ifup 就會抱怨 eth0 已經啟動。

我可以使用 啟動 ssh 服務service ssh start,並且在先前的 eth0 設定後可以存取它。

像 vim 這樣的程式仍然可以工作,但是像這樣的程式shutdown -r now就無法運作,因為無法識別關閉(以前的情況)。鍵入exit會出現錯誤(不是從 bash 退出時,而是從 sh 退出時,即 pid 1):

 Kernel panic - not syncing: Attempted to kill init! exitcode=00000800
...

之後,我更改了 cmdline.txt 以在 USB 驅動器上運行根分區/dev/sda2(我第一次遇到問題時未插入,在我將 dmesg 複製到 Pastebin 時插入)。 USB 是為了容納 Raspbian Jessie 而創建的。現在它可以工作並且桌面已加載(儘管一旦顯示桌面滑鼠和鍵盤就停止工作)並且我可以在沒有任何配置的情況下通過 ssh 連接到它(除了更改 pi 和 root 帳戶上的密碼)

將 cmdline.txt 更改回舊根目錄所在的 /dev/mmcblk0p2 ,並在使用 正確重新啟動後shutdown -r now,所有舊問題仍然存在,只是我不必 fsck /boot 分區。

在導致問題的強制關閉之前,我已經進行了大約一年的 apt-get 更新/升級。

有人可以幫我讓我的 raspbian 安裝恢復到工作狀態嗎?

有沒有任何工具可以幫助我恢復作業系統中未知的損壞部分?

相關內容