2

如何通过 chroot 恢复 Arch Linux 安装

 1 year ago
source link: https://www.51cto.com/article/721817.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
679e29956abcdb55884783e76db9d7611829b4.jpg

作为一个滚动发布版本,Arch Linux 有时会崩溃。那不是你自身的问题,而是因为数百个其它的原因,例如一个新内核与你的硬件或软件的兼容性。但是,即使如此,Arch Linux 仍然是比较优秀的,并且提供最新的软件包和应用程序。

但是,有些时候,它会给你带来麻烦,最后你只会看到一个闪烁的光标。

因此,在这种情况下,在你放弃希望前,你可能希望尝试恢复系统的安装以及数据,而不是重新格式化或重新安装。这篇指南在这些方面概述了一些步骤。

恢复 Arch Linux 安装

第一步是创建一个可启动的 Arch Linux 的现场Live USB 。从下面的链接中下载 ISO 镜像文件,并创建一个可启动的 ISO 的启动盘。你可以查看 ​​这篇​​ 关于如何使用 Etcher 创建可启动的 ISO 的启动盘的指南。记住,这一步骤需要在另一个工作稳定的系统上完成,很明显,这是因为你当前系统是不可用的。

下载 arch linux

你需要知道在 你的 Arch Linux 安装在哪个分区上。这是关键的一步。如果你不知道,你可以使用 GParted 来找出来。或者在你的 Grub 菜单中查看,或者也可以运行下面的命令来找出来。这将列出你所有的磁盘分区、大小和标签。

sudo lsblk -o name,mountpoint,label,size,uuid

在完成后,插入 USB 设备,并从中启动。你应该会在现场 USB 启动后看到 Arch Linux 提示符。

现在,使用下面的命令挂载 Arch Linux 分区。将 ​​/dev/sda3​​ 更改为你实际对应的分区。

mount /dev/sda3 /mntarch-chroot /mnt

​arch-chroot​​ 命令将在终端中挂载你的 Arch Linux 分区,然后,使用你的 Arch 用户名和密码来登录系统。现在,取决于你在这个阶段的需要,你可能有下面的一些选项。

  • 你可以前往​​/home​​ 文件夹来备份你的数据。为防止排错手段不能解决问题。你可以复制这些文件到一块外部的 USB 磁盘或其它的分区。
  • 检查日志文件,尤其是 pacman 日志,因为升级一些软件包可能会导致系统不稳定工作,例如,图形驱动程序或其它一些驱动程序。依据日志的记载,如果你有需要的话,你可以降级一些具体指定的软件包。

你可以使用下面的命令来查看 pacman 日志文件的最新的 200 行日志,来找出一些引起失败的项或依赖项的缺失。

tail -n 200 /var/log/pacman.log | less

上面的命令给出 ​​pacman.log​​ 文件的末尾处的 200 行来用于查对。现在,仔细检查自你上次成功启动以来更新了哪些软件包。

在某个地方记录下软件包的名称和版本。你可以尝试逐个降级软件包,或者,如果你认为是某个特定的软件包造成的问题的话,你可以使用 ​​pacman​​ 命令的 ​​-U​​ 开关选项来降级它。

pacman -U <package name>

在降级后(如果有一些软件包进行降级的话),你可以运行下面的命令来启动你的 Arch 系统。

exec /sbin/init

检查你的显示管理器的状态,并检查其是否有一些错误。有时,显示管理器会产生不能与 X 服务器X Server

systemctl status lightdm

或者,你可能希望通过下面的命令来启动它并检查错误。

lightdm --test-mode --debug

这里是一个 Lightdm 故障的示例,它导致了 Arch 系统不稳定工作。

lightdm - test mode

lightdm - test mode

或者,使用 ​​startx​​ 来启动 X 服务器进行检查。

根据我的经验,如果你在上面的命令中看到这些错误,尝试安装另外一个显示管理器(例如 sddm)并启动它可以消除错误。

  • 根据你的系统的实际状态来尝试上面的步骤并解决问题。针对特定的显示管理器 Lightdm 的错误,我们有一份​​指南​​,你可能会想查看它。
  • 如果你正在使用 sddm ,那么,试试​​这些排错步骤​​ 看看是否工作。

每个系统环境都是不同的。上面的步骤不一定适合你。但是,它值得一试,根据我的经验,它是可行的。如果它可行,那么恭喜你。否则,在下面的评论区让我知晓你是如何进行的。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK