我在工作笔记本电脑上双启动 Windows 并在带有 lvm 和 XBOOTLDR 分区的单个磁盘上进行归档。我使用 systemd-boot 作为引导加载程序。它工作正常大约 3 个月,然后突然在几次更新后无法启动,因为它显示以下消息:
:: running hook [keymap]
:: loading keymap ... done.
Waiting 10 seconds for device '<root_device>' ...
[ 7.234501] hid-generic 0003:0E8D:20FF:0001: No inputs registered, leaving
ERROR: device '<root_device>' not found. Skipping fsck.
:: mounting '<root_device>' on real root
mount: /new_root: no filesystem type specified.
You are now being dropped into an emergency shell.
sh: can't access tty: job control turned off
[rootfs ]#
以下是 的输出:
LSBLK
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 100M 0 part /efi <-- existing Windows efi system partition
├─sda2 8:2 0 16M 0 part
├─sda3 8:3 0 458.2G 0 part <-- C:
├─sda4 8:4 0 261.1G 0 part <-- resized D:
├─sda5 8:5 0 500M 0 part /boot <-- XBOOTLDR partition
└─sda6 8:6 0 211.6G 0 part
├─volgroup0-lv_root 254:1 0 30G 0 lvm /
└─volgroup0-lv_home 254:2 0 181.6G 0 lvm /home
猫 /etc/fstab
# /dev/mapper/volgroup0-lv_root
UUID=f0480644-7a7c-42fe-a129-9de278563336 / ext4 rw,relatime 0 1
# /dev/mapper/volgroup0-lv_home
UUID=5080944b-07bc-4e29-8295-27ea557720a0 /home ext4 rw,relatime 0 2
# /dev/sda1
UUID=ECCF-B1A8 /efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
# /dev/sda5
UUID=80E6-2B1C /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
猫 /boot/loader/entries/arch.conf
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=UUID=f0480644-7a7c-42fe-a129-9de278563336 rw
我使用以下命令安装引导加载程序:
# bootctl install --esp-path=/efi --boot-path=/boot
找不到我这个设置做错了什么。感谢您的帮助。
我尝试 chroot 进入系统并重新安装内核和 systemd-boot 或更改文件arch.conf
以指向带有标签或名称的根设备,但没有任何效果