一 制作U盘启动盘

下载 Arch 系统镜像(附清华源),准备一个U盘,将其刻录成启动盘。

  • Linux 下,运用 dd 命令

    $ dd bs=4M if=/path/to/archlinux.iso of=/dev/sda status=progress oflag=sync
  • Windows 下,使用软件 Refusdd 方式刻录成启动盘

  • Windows 下,使用软件 Ventory 制作启动盘(推荐!!!

    利用 Ventoy,我们无需反复地格式化U盘,只需要把 ISO/WIM/IMG/VHD(x)/EFI 等类型的文件直接拷贝到U盘里面就可以启动,无需其他操作,且支持一次性拷贝很多个不同类型的镜像文件。

二 挂载分区

关机启动到U盘,用 lsblkfdisk -l 查看硬盘分区情况,并按顺序挂载 //boot/EFI/home等。

三 修复系统

1. 重建fstab文件(可选)

$ mv /mnt/etc/fstab /mnt/etc/fstab.bac
$ genfstab -U /mnt > /mnt/etc/fstab
$ ls -l /dev/disk/by-uuid # 查看硬盘 uuid
$ cat /mnt/etc/fstab # 对应 uuid 查看重置分区配置文件是否正常

2. Arch-chroot 到受损系统并进行修复

$ arch-chroot /mnt
[root@archiso] $ pacman -S linux
[root@archiso] $ pacman -S linux-lts # lts内核
[root@archiso] $ grub-install --target=x86_64-efi --efi-directory=/boot/EFI --bootloader-id=GRUB
# 若要修改 grub 参数: vim /etc/default/grub
[root@archiso] $ grub-mkconfig -o /boot/grub/grub.cfg
[root@archiso] $ exit
$ umount -R /mnt
$ reboot

3. 重建 Windows 引导

# 需要在 /etc/default/grub 中加入一行 GRUB_DISABLE_OS_PROBER=false
os-prober
grub-mkconfig -o /boot/grub/grub.cfg

grub 引导修复完毕。

如果上述操作依旧无法解决问题,尝试降级内核

pacman -U /var/cache/pacman/pkg/linux-5.0.12.arch2-1-x86_64.pkg.tar.xz
文章目录