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

fdisk分区后文件系统未知,Grub无法识别Linux分区求助

修复调整分区后GRUB无法识别文件系统的问题

这种情况我太熟悉了——用fdisk删除旧分区重建后,GRUB的分区索引和实际GPT表对不上,再加上分区UUID大概率变了,直接就卡在grub>提示符。既然你已经进了Linux Live系统,咱们一步步把它救回来:

第一步:找到正确的Linux根分区

首先得确认哪个分区是你的系统盘,毕竟重建分区后编号可能变了:

  • 运行 lsblk 或者 blkid,找带ext4/xfs这类Linux文件系统的分区,记下它的设备路径(比如/dev/sda5)和UUID。
  • 要是拿不准,也可以用 sudo fdisk -l 看分区表,结合分区大小来判断——毕竟你刚调整过分区,大小应该有印象。

第二步:挂载系统分区到Live环境

把你的系统盘挂载到Live系统的目录里,这样才能操作它:

  1. 创建挂载目录:sudo mkdir /mnt/root
  2. 挂载根分区:sudo mount /dev/sdaX /mnt/root(把X换成你找到的分区号,比如sda5)
  3. 如果有单独的/boot分区,也要挂载:sudo mount /dev/sdaY /mnt/root/boot(Y是boot分区的编号)
  4. 如果是UEFI系统,必须挂载EFI分区:sudo mount /dev/sdaZ /mnt/root/boot/efi(Z是EFI分区,通常是FAT32格式)

第三步:重新安装并更新GRUB

进入chroot环境,让系统以为我们在原系统里操作,然后修复GRUB:

  1. 进入chroot:sudo chroot /mnt/root
  2. 根据你的启动方式选择安装命令:
    • BIOS/MBR系统:grub-install /dev/sda(注意这里是磁盘设备,不是分区,比如/dev/sda,别加分区号)
    • UEFI系统:grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
  3. 更新GRUB配置,让它识别新的分区:update-grub

第四步:修复fstab(如果UUID变了)

重建分区后UUID会变,要是fstab里还是旧的UUID,系统启动后会找不到分区:

  1. 退出chroot:exit
  2. 查看原系统的fstab:cat /mnt/root/etc/fstab
  3. 和之前blkid得到的新UUID对比,如果根分区(或者boot/efi分区)的UUID不对,编辑fstab:sudo nano /mnt/root/etc/fstab,把旧UUID替换成新的,保存退出(按Ctrl+O,回车,再Ctrl+X)

做完这些,重启电脑应该就能正常进入系统了。核心问题就是分区重建后,GRUB的旧配置和新的分区信息不匹配,咱们通过重新安装GRUB+更新配置来解决。

内容的提问来源于stack exchange,提问作者Veladus

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:28:07