Artix Linux加密U盘启动时initramfs无法在部分设备识别根分区的问题求助
Artix Linux加密U盘启动时initramfs无法在部分设备识别根分区的问题求助
大家好,我遇到了一个困扰很久的启动问题,想请各位帮忙分析排查一下:
我的系统配置
- 操作系统:Artix Linux
- 内核版本:
6.1.24-hardened1-1-hardened(linux-hardened 内核) - 存储与启动相关配置:
- 加密根分区(未使用LVM)
- 未加密的独立boot分区(GRUB已安装在此分区)
- 整个系统安装在USB闪存盘上
- 无EFI分区,也没有额外的自定义模块、钩子等
- mkinitcpio.conf 中的HOOK顺序:
base udev autodetect modconf kms block lvm2 encrypt keyboard keymap consolefont resume filesystems fsck
问题现象
我有两台不同的机器,用同一个U盘启动时表现完全不同:
- 机器1:全程正常启动,没有任何异常
- 机器2:启动流程能正常走到加载initramfs阶段,但执行到
encrypt钩子时,无法通过UUID找到加密根分区,尝试解密10秒后失败,直接进入救援shell。
进入救援shell后,执行blkid命令,完全看不到U盘的任何分区信息——包括它刚刚用来启动的boot分区都识别不到,但能正常列出机器2内置硬盘的所有UUID和设备映射。
已尝试的排查步骤
- 检查BIOS启动模式:怀疑是UEFI启动的兼容性问题,进入BIOS设置切换为legacy启动模式,并且确认BIOS启动菜单里没有UEFI方式启动该U盘的选项,排除了UEFI启动的可能。
- 验证GRUB识别能力:在GRUB启动界面按
c进入命令行,执行ls命令,能正常看到U盘的根分区、boot分区,以及机器2内置硬盘的分区,说明GRUB层面是可以识别U盘分区的。 - 调高日志级别:把grub配置中的日志级别调到999,但启动过程中除了“无法找到根分区”的提示外,没有输出其他警告或错误信息。
目前这个问题是100%可复现的,而且完全不影响机器1正常使用这个U盘启动系统。有没有朋友遇到过类似的情况,或者能给我一些下一步排查的思路?
备注:内容来源于stack exchange,提问作者user1794392
相关产品推荐
相关产品推荐

