Windows 挂载 EFI 分区

在 PowerShell 中挂载 EFI 分区,通常需要以下步骤:

  1. 查看磁盘和分区列表: 首先,使用 Get-DiskGet-Partition 命令来查看系统中的磁盘和分区信息。找出 EFI 分区所在的磁盘和分区号。

    Get-Disk
    Get-Partition
    
  2. 找到 EFI 分区: EFI 分区通常是 FAT32 文件系统,标记为系统分区(System)或 EFI。

  3. 为 EFI 分区分配盘符: 使用 Assign-Partition 命令为 EFI 分区分配一个盘符(例如 Z:)。假设你知道 EFI 分区在磁盘 0 上的分区号为 1:

    $partition = Get-Partition -DiskNumber 0 -PartitionNumber 1
    $partition | Set-Partition -NewDriveLetter Z
    
  4. 访问 EFI 分区: 现在,你可以通过分配的盘符(如 Z:)访问 EFI 分区中的文件。

    Set-Location Z:
    
  5. 完成操作后移除盘符: 如果你不再需要访问 EFI 分区,可以移除分配的盘符。

    Remove-PartitionAccessPath -DiskNumber 0 -PartitionNumber 1 -AccessPath "Z:\"
    

执行这些步骤后,EFI 分区将被挂载到指定的盘符上,但可能只允许在命令行中进行交互。

使用 diskpart 挂载 EFI 分区

使用 cmd 进入 diskpart 程序,然后按下面的步骤操作:

  1. list disk
  2. sel disk 0
  3. list part
  4. sel part 1
  5. set id=ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
  6. ass

其中第二步指定系统存在的磁盘编号,而第四步选择 EFI 分区,通常叫「系统」,大小为几百M。

id ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 是 Windows 数据分区 (Basic Data Partition) 的标准 GUID,而 EFI 分区的 GUID 是 c12a7328-f81f-11d2-ba4b-00a0c93ec93b。最好在运行第5步前先运行 detail part 查看一下 GUID,方便用完后改回去。

使用完成后移除盘符

remove letter=D (假设前面自动分配的盘符是 D)

还原 GUID

移除盘符后进行,命令是 set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b,有可能会提示设备在使用中,加上 OVERRIDE 选项执行即可:set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b OVERRIDE

Comments