如何通過 chroot 恢復 Arch Linux 安裝
作為一個滾動發布版本,Arch Linux 有時會崩潰。那不是你自身的問題,而是因為數百個其它的原因,例如一個新內核與你的硬件或軟件的兼容性。但是,即使如此,Arch Linux 仍然是比較優秀的,并且提供最新的軟件包和應用程序。
但是,有些時候,它會給你帶來麻煩,最后你只會看到一個閃爍的光標。
因此,在這種情況下,在你放棄希望前,你可能希望嘗試恢復系統的安裝以及數據,而不是重新格式化或重新安裝。這篇指南在這些方面概述了一些步驟。
恢復 Arch Linux 安裝
第一步是創建一個可啟動的 Arch Linux 的現場Live USB 。從下面的鏈接中下載 ISO 鏡像文件,并創建一個可啟動的 ISO 的啟動盤。你可以查看 ??這篇?? 關于如何使用 Etcher 創建可啟動的 ISO 的啟動盤的指南。記住,這一步驟需要在另一個工作穩定的系統上完成,很明顯,這是因為你當前系統是不可用的。
你需要知道在 你的 Arch Linux 安裝在哪個分區上。這是關鍵的一步。如果你不知道,你可以使用 GParted 來找出來。或者在你的 Grub 菜單中查看,或者也可以運行下面的命令來找出來。這將列出你所有的磁盤分區、大小和標簽。
在完成后,插入 USB 設備,并從中啟動。你應該會在現場 USB 啟動后看到 Arch Linux 提示符。
現在,使用下面的命令掛載 Arch Linux 分區。將 ??/dev/sda3?
? 更改為你實際對應的分區。
??arch-chroot?
? 命令將在終端中掛載你的 Arch Linux 分區,然后,使用你的 Arch 用戶名和密碼來登錄系統。現在,取決于你在這個階段的需要,你可能有下面的一些選項。
- 你可以前往?
?/home?
? 文件夾來備份你的數據。為防止排錯手段不能解決問題。你可以復制這些文件到一塊外部的 USB 磁盤或其它的分區。 - 檢查日志文件,尤其是 pacman 日志,因為升級一些軟件包可能會導致系統不穩定工作,例如,圖形驅動程序或其它一些驅動程序。依據日志的記載,如果你有需要的話,你可以降級一些具體指定的軟件包。
你可以使用下面的命令來查看 pacman 日志文件的最新的 200 行日志,來找出一些引起失敗的項或依賴項的缺失。
上面的命令給出 ??pacman.log?
? 文件的末尾處的 200 行來用于查對。現在,仔細檢查自你上次成功啟動以來更新了哪些軟件包。
在某個地方記錄下軟件包的名稱和版本。你可以嘗試逐個降級軟件包,或者,如果你認為是某個特定的軟件包造成的問題的話,你可以使用 ??pacman?
? 命令的 ??-U?
? 開關選項來降級它。
在降級后(如果有一些軟件包進行降級的話),你可以運行下面的命令來啟動你的 Arch 系統。
檢查你的顯示管理器的狀態,并檢查其是否有一些錯誤。有時,顯示管理器會產生不能與 X 服務器X Server
或者,你可能希望通過下面的命令來啟動它并檢查錯誤。
這里是一個 Lightdm 故障的示例,它導致了 Arch 系統不穩定工作。
lightdm - test mode
或者,使用 ??startx?
? 來啟動 X 服務器進行檢查。
根據我的經驗,如果你在上面的命令中看到這些錯誤,嘗試安裝另外一個顯示管理器(例如 sddm)并啟動它可以消除錯誤。
- 根據你的系統的實際狀態來嘗試上面的步驟并解決問題。針對特定的顯示管理器 Lightdm 的錯誤,我們有一份??指南??,你可能會想查看它。
- 如果你正在使用 sddm ,那么,試試??這些排錯步驟?? 看看是否工作。
結語
每個系統環境都是不同的。上面的步驟不一定適合你。但是,它值得一試,根據我的經驗,它是可行的。如果它可行,那么恭喜你。否則,在下面的評論區讓我知曉你是如何進行的。