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

调整分区后Fedora启动提示“No bootable device found”的修复求助

调整分区后Fedora启动提示“No bootable device found”的修复求助

各位好,我遇到了Fedora启动的棘手问题,想请大家帮忙排查下。先说说背景:我是个Linux新手,之前尝试在Fedora上双启动Windows的时候,胡乱调整了几个分区,当时完全没记录操作步骤,现在只能对着当前的系统状态找解决办法——后悔死没提前备份了,现在只能硬着头皮推进。

目前的问题是:我从Dell Inspiron 7400的启动菜单选择Fedora时,会弹出No bootable devices found的错误。现在我只能通过Fedora live USB来操作系统。

命令输出信息

首先是sudo fdisk -l的输出:

Disk /dev/nvme0n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: KBG40ZNS512G NVMe KIOXIA 512GB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3A1641E9-8A61-4571-84A5-5A4B01FE1FEF

Device             Start        End   Sectors   Size Type
/dev/nvme0n1p1      2048    1230847   1228800   600M EFI System
/dev/nvme0n1p2   1230848    3327999   2097152     1G Linux filesystem
/dev/nvme0n1p3   3328000  481832959 478504960 228.2G Linux filesystem
/dev/nvme0n1p4 481832960 1000214527 518381568 247.2G Microsoft basic data

GPT PMBR size mismatch (3979243 != 240328703) will be corrected by write.
The backup GPT table is not on the end of the device.

然后是lsblk -f针对目标磁盘的输出:

NAME        FSTYPE   FSVER            LABEL                 UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1
├─nvme0n1p1 exfat    1.0                                    E3FF-EA47
├─nvme0n1p2 ext4     1.0                                    98871ee5-1638-4cce-ad50-8668e8ddca31
├─nvme0n1p3 btrfs                     fedora_localhost-live 2f90f992-e665-42ac-b8d0-0452f56c3413
└─nvme0n1p4 exfat    1.0                                    67ED-F63F

补充下分区作用:nvme0n1p3是我要恢复的Fedora系统分区,nvme0n1p4是之前为Windows 10准备的存储分区。

尝试挂载系统并查看fstab的过程

我先挂载了nvme0n1p3和相关虚拟文件系统,进入chroot环境:

$ mount -t btrfs -o subvol=root,compress=zstd:1 UUID=2f90f992-e665-42ac-b8d0-0452f56c3413 /mnt
$ for dir in sys proc run dev ; do mount --bind /$dir /mnt/$dir ; done
$ chroot /mnt

当前挂载的分区状态:

$ mount
/dev/nvme0n1p3 on / type btrfs (rw,relatime,seclabel,compress=zstd:1,ssd,space_cache=v2,subvolid=257,subvol=/root)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,size=3218672k,nr_inodes=819200,mode=755,inode64)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=4096k,nr_inodes=1048576,mode=755,inode64)
/dev/nvme0n1p2 on /boot type ext4 (rw,relatime,seclabel)
/dev/nvme0n1p3 on /home type btrfs (rw,relatime,seclabel,compress=zstd:1,ssd,space_cache=v2,subvolid=256,subvol=/home)

现在/boot/efi没有挂载,尝试挂载时出现错误:

$ mount /boot/efi
mount: /boot/efi: wrong fs type, bad option, bad superblock on /dev/nvme0n1p1, missing codepage or helper program, or other error.
dmesg(1) may have more information after failed mount system call.

chroot环境下/etc/fstab的内容:

UUID=2f90f992-e665-42ac-b8d0-0452f56c3413 /                       btrfs   subvol=root,compress=zstd:1 0 0
UUID=98871ee5-1638-4cce-ad50-8668e8ddca31 /boot                   ext4    defaults        1 2
UUID=E3FF-EA47 /boot/efi               vfat    umask=0077,shortname=winnt 0 2
UUID=2f90f992-e665-42ac-b8d0-0452f56c3413 /home                   btrfs   subvol=home,compress=zstd:1 0 0
/dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_01014b4983299e0e5a6c1f9f3d81280741420402818084341748ec522098bd28ad3d0000000000000000000034beffdcff0c520091558107b7ad0543-0:0 /mnt/usb-USB_SanDisk_3.2Gen1_01014b4983299e0e5a6c1f9f3d81280741420402818084341748ec522098bd28ad3d0000000000000000000034beffdcff0c520091558107b7ad0543-0:0 auto nosuid,nodev,nofail,x-gvfs-show 0 0

我已经尝试过的操作

  • 一开始nvme0n1p1(标记为EFI分区)是NTFS格式,我跟着网上教程用GParted把它格式化成了exFAT
  • 尝试手动将nvme0n1p1挂载到/boot/efi
  • 修改了/etc/fstab里的UUID,改成了当前nvme0n1p1的UUID

现在还是没法解决启动问题,希望各位能给点建议,谢谢!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 12:14:06