不小心删除了 efi 分区

不小心删除了 efi 分区

所以,我真的把事情搞砸了……长话短说,我删除了 Windows 8.1 efi 分区,现在无法启动 Windows。此外,我甚至没有剩余的 efi 分区来创建 Linux 安装(它似乎需要它,以便将 Linux 引导加载程序放在某处)。

我在笔记本电脑上唯一可以使用的就是实时 ubuntu cd。此外,每次打开 gparted 时,它都会崩溃,并给出一个非常模糊的错误“Assertion (last_usable <= disk->dev->length) at ../../../libparted/labels/gpt.c:994 in function _parse_header() failed.”我甚至不确定我的电脑是否还能从 efi 启动,因为我在 bios 菜单中将其切换到传统模式,但一直无法恢复到该模式。

我尝试使用 Windows 10 Live CD 并修复安装,但安装程序不喜欢任何当前存在的分区。对于大多数分区,它说它们是 GPT 格式的,无法使用。

我该从哪里开始修复这个问题?有没有什么方法可以从 Linux Live CD 创建 efi 分区?如果我的整个计算机被清除,我并不介意,我有我需要的所有备份,我只想能够再次使用我的计算机。这是 sudo gdisk -l /dev/sda 给出的分区列表。

Disk /dev/sda: 250069680 sectors, 119.2 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 5C489780-9031-436B-B6C1-4F0C29E16773
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 500121566
Partitions will be aligned on 2048-sector boundaries
Total free space is 6077 sectors (3.0 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1230847   600.0 MiB   2700  Basic data partition
   2         1230848         1845247   300.0 MiB   0700  
   3         1845248         2107391   128.0 MiB   0C01  Microsoft reserved part
   4         2107392       500117503   237.5 GiB   EF00  Basic data partition

以下是 Windows 10 安装 USB 识别的一些分区的图像。

前四个分区,C 盘

接下来的四个分区,D 盘

尝试选择驱动器 1 分区 1 进行安装后,出现消息“Windows 检测到 EFI 系统分区已格式化为 NTFS。将 EFI 系统分区格式化为 FAT32,然后重新启动安装。”当然,如果 gparted 可以正常工作,情况就不会那么糟糕,但每次打开它时它都会崩溃……

答案1

我认为最好的做法是:

  1. 使用 Ubuntu 备份所有数据。
  2. 删除磁盘 0(安装 Windows 的磁盘)上的所有分区。
  3. 安装 Ubuntu/Windows 中的任何一个。它们将自行创建所需的分区。(最好是 Windows

如果你想尝试挽救(现在看起来更困难了)请继续阅读。

首先尝试一下:

gdisk t 2 EFOO
gdisk t 4 0700

然后仅执行下面的步骤 1、2 和 3(不要执行 4)。重新启动以查看是否有效。

如果没有,请继续按照以下说明操作。

300MB SYSTEM 分区最有可能 (99.99%) 是 EFI 分区。您不需要 gparted 即可执行我们需要的操作。
只需启动 Ubuntu 并运行以下命令:

  1. 找到你的 EFI 分区的名称

    sudo fdisk -l
    

    EFI 分区的大小将为 300MB,正如您提到的那样。记下它的名称(最有可能是 /dev/sda2)

  2. 挂载 EFI 分区

    sudo mkdir /mnt/efipart
    sudo mount /dev/sda2 /mnt/efipart
    
  3. 将 EFI 目录从 Windows 安装介质复制到分区。首先使用fdisk步骤 1 中的名称找到 Windows 安装介质的名称。我们假设它是 /dev/sdc1

    sudo cp -R /dev/sdc1/efi/* /mnt/efipart/EFI/
    
  4. 设置 EFI 分区标志。

    gdisk t 2 EFOO
    

顺便说一句:再次查看您刚刚展示的分区表,似乎这可能不起作用(但仍然值得一试)。

如果这不起作用,您将必须重新对磁盘进行分区(从头开始) 以防万一:

https://superuser.com/questions/764799/how-to-create-an-efi-system-partition
如何创建 EFI 分区

相关内容