前言

第一次在使用Arch Linux中遇到滚挂,在此记录一下。

问题

昨天不是在研究pacman的指令嘛,就输了pacman的很多指令。

其中就执行了sudo pacman -Syyu更新。

1
sudo pacman -Syyu

结果今天早上开机就进不去了,进入了emergency mode

报错信息说是无法挂载/boot

image-01

解决

尝试1

我先是尝试重新挂载/boot,但是没用。

1
mount /dev/nvme1n1p1 /boot

显示:

1
mount: /boot: unknown filesystem type 'vfat'.

尝试2

U盘启动进入Arch Linux

尝试在重新挂载/boot

1
2
3
4
mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1p4 /mnt # 挂载 / 目录
mkdir /mnt/home # 创建 /home 目录
mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1p4 /mnt/home # 挂载 /home 目录
mount /dev/nvme1n1p1 /mnt/boot # 挂载 /boot 目录

但虽然可以挂载上,也可以进入/boot目录,但重启还是进入emergency mode

最终解决

最后是重装了Linux内核

在U盘启动进入Arch Linux

还是先挂载好目录。

之后直接重装Linux内核

1
pacstrap /mnt base base-devel linux linux-firmware  # 只重装Linux我不放心,就把base和base-devel也重装了(懒得再重启了)

重装完后,reboot,就可以正常进入系统了。

查看pacman日志

打开/var/log/pacman.log,可以查看pacman的日志。

1
vim /var/log/pacman.log

image-02
image-03

可以看到,Linux内核的版本从最初装的6.6.7.arch1-1,更新到了6.6.8.arch1-1

也可以使用下面的命令pacman的日志最后200行。

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