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