Manjaro 没有出现在 systemd-boot 中
Manjaro not showing up in systemd-boot
经过几个小时的尝试,我无法让 Manjaro(Luks、btrfs、lvm)出现在我的 systemd-boot 菜单中,我也不知道为什么。
Manjaro 设置了 Luks 加密、btrfs 文件系统和 LVM。引导管理器安装在 /boot/efi
在 Manjaro 之前,我已经双引导 PopOS 和 Windows,它们是通过 systemd-boot 设置的。我已经使用架构师映像安装了 Manjaro,并选择了 systemd-boot 作为引导加载程序。重新启动后,唯一显示的条目是 Windows。我通过 chroot 进入安装和 运行 update-initramfs
.
设法修复了 PopOS 条目
我尝试过的:
- 运行
sudo mkinitcpio -p linux59
内部 chroot
- 运行
sudo boot --path="/mnt/boot/efi install"
来自我的主机 (Pop)
- 手动添加文件
/boot/efi/loader/entries/Manjaro.conf
:
title Manjaro Linux 5.9
linux /vmlinuz-5.9-x86_64
initrd /intel-ucode.img // Tried with and without this line
initrd /initramfs-5.9-x86_64.img
options root=UUID=MFQTMb-ndrw-puyp-3O2T-F7QN-NQmZ-3Ss9LL rw
rootflags=subvol=/@ cryptdevice=UUID=6e319df0-69f0-41bd-bf20-d4261d97d67e
sudo lsblk -f
的输出 - Manjaro 安装在 /dev/nvme1n1p4
nvme1n1
├─nvme1n1p1 vfat FAT32 01E2-E38F 153.2M 69% /mnt/boot/efi
├─nvme1n1p2 vfat FAT32 01E2-DF09 1.6G 59% /recovery
├─nvme1n1p3 crypto_LUKS 2 b7bb66dd-8690-4eca-b881-bf7e662a9336
│ └─cryptdata LVM2_member LVM2 001 aDQNBf-0A0i-KFCs-wUfm-LwGR-FhjC-f7zc9q
│ └─data-root
│ ext4 1.0 445a21c7-c3f4-45bb-b752-8b91c0cb4196 7.9G 90% /
└─nvme1n1p4 crypto_LUKS 1 6e319df0-69f0-41bd-bf20-d4261d97d67e
└─cryptroot LVM2_member LVM2 001 MFQTMb-ndrw-puyp-3O2T-F7QN-NQmZ-3Ss9LL
└─vg0-root--lv
btrfs cb3b0f4f-3639-4b20-9154-f1254bff5fd3 279.8G 3% /mnt/home
sudo sdboot-manage gen
- 这没有做任何事情,我怀疑是因为我的 loader/entries
在 /boot/efi
而不是 /boot
令我惊讶的是 PopOS 的配置条目看起来不同:
title Pop!_OS
linux /EFI/Pop_OS-445a21c7-c3f4-45bb-b752-8b91c0cb4196/vmlinuz.efi
initrd /EFI/Pop_OS-445a21c7-c3f4-45bb-b752-8b91c0cb4196/initrd.img
options root=UUID=445a21c7-c3f4-45bb-b752-8b91c0cb4196 ro quiet loglevel=0 systemd.show_status=false splash rcutree.rcu_idle_gp_delay=1 mem_sleep_default=deep
Pop 也使用 /etc/crypttab
,而 Manjaro 不使用。不过,所有这些差异当然不一定意味着什么。
问题已解决。
由于boot文件安装在/boot,而bootloader安装在/boot/efi,相对路径是后者而不是前者。通过将引导文件复制到 /boot/efi
中的目录来解决它
经过几个小时的尝试,我无法让 Manjaro(Luks、btrfs、lvm)出现在我的 systemd-boot 菜单中,我也不知道为什么。
Manjaro 设置了 Luks 加密、btrfs 文件系统和 LVM。引导管理器安装在 /boot/efi
在 Manjaro 之前,我已经双引导 PopOS 和 Windows,它们是通过 systemd-boot 设置的。我已经使用架构师映像安装了 Manjaro,并选择了 systemd-boot 作为引导加载程序。重新启动后,唯一显示的条目是 Windows。我通过 chroot 进入安装和 运行 update-initramfs
.
我尝试过的:
- 运行
sudo mkinitcpio -p linux59
内部 chroot - 运行
sudo boot --path="/mnt/boot/efi install"
来自我的主机 (Pop) - 手动添加文件
/boot/efi/loader/entries/Manjaro.conf
:
title Manjaro Linux 5.9
linux /vmlinuz-5.9-x86_64
initrd /intel-ucode.img // Tried with and without this line
initrd /initramfs-5.9-x86_64.img
options root=UUID=MFQTMb-ndrw-puyp-3O2T-F7QN-NQmZ-3Ss9LL rw
rootflags=subvol=/@ cryptdevice=UUID=6e319df0-69f0-41bd-bf20-d4261d97d67e
sudo lsblk -f
的输出 - Manjaro 安装在 /dev/nvme1n1p4
nvme1n1
├─nvme1n1p1 vfat FAT32 01E2-E38F 153.2M 69% /mnt/boot/efi
├─nvme1n1p2 vfat FAT32 01E2-DF09 1.6G 59% /recovery
├─nvme1n1p3 crypto_LUKS 2 b7bb66dd-8690-4eca-b881-bf7e662a9336
│ └─cryptdata LVM2_member LVM2 001 aDQNBf-0A0i-KFCs-wUfm-LwGR-FhjC-f7zc9q
│ └─data-root
│ ext4 1.0 445a21c7-c3f4-45bb-b752-8b91c0cb4196 7.9G 90% /
└─nvme1n1p4 crypto_LUKS 1 6e319df0-69f0-41bd-bf20-d4261d97d67e
└─cryptroot LVM2_member LVM2 001 MFQTMb-ndrw-puyp-3O2T-F7QN-NQmZ-3Ss9LL
└─vg0-root--lv
btrfs cb3b0f4f-3639-4b20-9154-f1254bff5fd3 279.8G 3% /mnt/home
sudo sdboot-manage gen
- 这没有做任何事情,我怀疑是因为我的loader/entries
在/boot/efi
而不是/boot
令我惊讶的是 PopOS 的配置条目看起来不同:
title Pop!_OS
linux /EFI/Pop_OS-445a21c7-c3f4-45bb-b752-8b91c0cb4196/vmlinuz.efi
initrd /EFI/Pop_OS-445a21c7-c3f4-45bb-b752-8b91c0cb4196/initrd.img
options root=UUID=445a21c7-c3f4-45bb-b752-8b91c0cb4196 ro quiet loglevel=0 systemd.show_status=false splash rcutree.rcu_idle_gp_delay=1 mem_sleep_default=deep
Pop 也使用 /etc/crypttab
,而 Manjaro 不使用。不过,所有这些差异当然不一定意味着什么。
问题已解决。 由于boot文件安装在/boot,而bootloader安装在/boot/efi,相对路径是后者而不是前者。通过将引导文件复制到 /boot/efi
中的目录来解决它