You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法通过搭载rEFIND引导程序的U盘引导PCIe NVMe SSD上的Ubuntu系统

无法通过搭载rEFIND引导程序的U盘引导PCIe NVMe SSD上的Ubuntu系统

看起来你在把Ubuntu 22.04从机械硬盘克隆到PCIe NVMe SSD后,遇到了rEFINDU盘引导进入紧急模式的棘手问题,我来帮你梳理几个关键的排查和修复方向:

一、先解决rEFIND引导U盘的潜在问题

从你提供的GParted信息来看,这个U盘的EFI分区(/dev/sdf1)存在未分配空间,且尝试扩容文件系统失败,甚至出现了“无法检测文件系统”的错误——这可能导致rEFIND引导文件不完整或加载异常,是优先要处理的点:

  • 备份U盘上的所有重要数据
  • 用GParted重新格式化U盘:删除原有分区,新建一个FAT32格式的EFI分区(不要用FAT16,兼容性更差),确保分区占满整个U盘空间
  • 重新制作rEFIND引导盘:下载最新版rEFIND,解压后将refind文件夹和refind.conf复制到U盘的EFI分区根目录,或者使用官方提供的refind-install脚本直接安装到U盘

二、排查NVMe SSD的引导与挂载问题

紧急模式里的no caching mode page found和assuming drive cache write through大多是NVMe磁盘缓存的警告,一般不会直接导致引导失败,真正的问题大概率出在根文件系统挂载或引导配置上:

1. 手动挂载根分区排查错误

进入紧急模式后,先尝试手动挂载你的Ubuntu根分区(/dev/nvme0n1p6):

mount /dev/nvme0n1p6 /root

如果出现报错(比如文件系统损坏、UUID不匹配),根据提示修复:

  • 若提示文件系统损坏,再次运行fsck /dev/nvme0n1p6(注意不要在挂载分区时运行)
  • 若提示UUID问题,用blkid /dev/nvme0n1p6查看当前分区的UUID,再对比/root/etc/fstab里的配置,确保两者一致(克隆后UUID不会变,但如果原系统是用设备名挂载的,建议改成UUID挂载更稳定)

2. 重新生成initramfs与GRUB配置

如果是NVMe驱动未包含在初始化镜像(initramfs)里,会导致系统无法识别NVMe磁盘,步骤如下:

  1. 挂载EFI分区:
    mount /dev/nvme0n1p1 /root/boot/efi
    
  2. 切换到根分区环境:
    chroot /root
    
  3. 重新生成所有内核的initramfs:
    update-initramfs -u -k all
    
  4. 更新GRUB并重新安装到EFI分区:
    update-grub
    grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu --recheck
    

3. 检查BIOS设置

进入电脑BIOS确认以下几点:

  • 开启NVMe控制器支持(部分老主板需要手动开启)
  • 磁盘模式设置为AHCI(不要用RAID模式,会导致Linux无法识别磁盘)
  • 确认NVMe SSD在启动设备列表中的优先级(即使你用U盘引导,系统也需要能正确识别到NVMe磁盘)

三、简化日志排查

如果你看不懂journalctl -xb的完整日志,可以用过滤命令只看错误信息:

journalctl -xb | grep -i error

重点关注和nvme、mount、filesystem相关的错误,这些通常是引导失败的核心原因。

备注:内容来源于stack exchange,提问作者user78290

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 13:19:34