带有 linux-5.9 内核的 Archlinux iso

带有 linux-5.9 内核的 Archlinux iso

我已经使用以下方式构建了 linux-5.9 内核本指南对于 initramfs,我遵循了自动预设方法部分。

对于我遵循的 iso本指南,使用了热冷自定义配置文件(重命名为 custom-profile/),将vmlinux-linux59和 添加initramfs-linux59.imgcustom-profile/airootfs/boot/目录中。最后,我在中创建了一个条目 custom-profile/efiboot/loader/entries

#
# SPDX-License-Identifier: GPL-3.0-or-later

title   Arch Linux CUSTOM install medium (x86_64, UEFI)
linux   /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux59
initrd  /%INSTALL_DIR%/boot/intel-ucode.img
#initrd  /%INSTALL_DIR%/boot/amd-ucode.img
initrd  /%INSTALL_DIR%/boot/x86_64/initramfs-linux59.img
options root="LABEL=%ARCHISO_LABEL%" rw archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%

如果在 systemd-boot 菜单中选择了原始内核,则 iso 可以正常工作,但如果选择了 linux59 的条目,则:

:: running early hook [udev]
Starting version 246.6-1-arch
:: running hook [udev]
:: Triggering uevents...
Waiting 10 seconds for device /dev/disk/by-label/ARCH_202010 ...
ERROR: device 'LABEL ARCH_202010' not found. Skipping fsck.
:: mounting 'LABEL=ARCH_202010' on real root 
mount:  /new_root: can't find LABEL=ARCH_202010.
You are now being dropped into an emergency shell.
sh: can't access tty: job control turned off 
[rootfs ]#

我认为问题出在我生成的 initramfs 上# mkinitcpio -p linux59,但我无法弄清楚具体在哪里。

相关内容