macOS下Parallels Desktop给Windows Bootcamp挂载物理硬盘百分百成功的办法(适合黑苹果)

macOS下Parallels Desktop给Windows Bootcamp挂载物理硬盘百分百成功的办法(适合黑苹果)

笔者环境

  • macOS 14.3.1
  • Parallels Desktop 18
  • 西数730 512G
  • 西数蓝盘 1T
  • 东芝红盘 2T
  • Windows 11(bootcamp)

准备事项

  1. Command + Space 打开搜索,输入终端并打开

  2. 输入sudo -i切换到root,输入diskutil listdiskutil list

  3. /dev/disk1这是磁盘路径,如果你需要添加别的就选择你要添加的路径即可

  4. 输入gpt -r show /dev/disk1,获取当前磁盘的分区信息gpt -r show /dev/disk1

  5. 分区解析:

    1. PMBR:这是保护性 MBR,它保护磁盘不被误认为是未分区的。
    2. GPT header: 这是主 GPT 头,它包含 GPT 的全局信息,如分区条目的位置和数量。
    3. GPT table:这是主 GPT 表,包含实际的分区条目。
    4. GPT part:这是第一个 GPT 分区。
    5. Sec GPT table:这是次级 GPT 表,用于冗余和恢复目的,位于磁盘末尾。
    6. Sec GPT header:这是次级 GPT 头,包含次级 GPT 表的信息。
  6. GPT part才是我们真实的基础数据分区,当前的这些条目需全部保存,后面需要用到。

  7. (可选)diskutil info /dev/disk1 获取硬盘名diskutil info /dev/disk1

  8. diskutil info /dev/disk1s1 s1来自于第5步获取的GPT part索引号diskutil info /dev/disk1s1

  9. 总结:

需要的条目值(复制你自己的)
磁盘路径/dev/disk0
磁盘分区信息gpt -r show /dev/disk1用命令获取全部
磁盘名称diskutil info /dev/disk1用命令获取Device / Media Name
磁盘主分区UUIDdiskutil info /dev/disk1s1用命令获取Disk / Partition UUID

如果你有的磁盘有多个分区请通过diskutil info /dev/disk1s后面加上1或者2以此类推拿到Disk / Partition UUID

创建parallels所需的hhd文件

  1. 打开parallels,找到你的Windows虚拟机右键在Finder中显示在Finder中显示
  2. 在打开的目录中右键**.pvm**后缀的虚拟机文件,显示包内容显示包内容
  3. 在里面选择现有的**.hdd**,右键复制出来一个副本复制副本
  4. 重命名,命名规范
    1. 上面获取到的Device / Media Name
    2. -1T Media 1T是磁盘容量
    3. (disk1) 磁盘路径
    4. 最终的名称:TOSHIBA HDWD120-2T Media (disk1).hdd
    5. 你也可以瞎写,这里无所谓(笔者强迫症)
  5. 右键你刚命名的TOSHIBA HDWD120-2T Media (disk1).hdd文件,选择显示包内容显示包内容
  6. 打开包内容后,里面也有一个**.hdd**文件,重命名(和外面那个一样的命名)重命名在这里插入图片描述
  7. 编辑DiskDescriptor.xml文件
    1. 修改UID和NAME:UID自己在网上找个uuid生成,NAME就是上面修改的**.hdd**的文件名修改UID和NAME
    2. 修改StorageData
      	gpt -r show /dev/disk1:
      	   start        size  index  contents
                 0           1         PMBR
                 1           1         Pri GPT header
                 2          32         Pri GPT table
                34		2014
              2048  3907024896	  1  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
        3907026944        2191
        3907029135          32         Sec GPT table
        3907029167           1		 Sec GPT header
        
          <Storage Protected="True"> //对应 gpt -r show /dev/disk1 里面的PMBR
              <Start>0</Start>  //PMBR start
              <End>1</End>   //PMBR start + PMBR size
              <Blocksize>2048</Blocksize> //原有保持不变
              <Image>
                  <GUID>{5fbaabe3-6958-40ff-92a7-860e329aab41}</GUID>  //原有保持不变
                  <Type>Plain</Type>  //原有保持不变
                  <File>PhysicalMbr.hds</File>  //原有保持不变 这里面的Mbr值就是分区里面的PMBR
              </Image>
          </Storage>
          
      
      gpt -r show /dev/disk1:
      	   start        size  index  contents
                 0           1         PMBR
                 1           1         Pri GPT header
                 2          32         Pri GPT table
                34		2014
              2048  3907024896	  1  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
        3907026944        2191
        3907029135          32         Sec GPT table
        3907029167           1		 Sec GPT header
        
          <Storage Protected="True"> //对应gpt -r show /dev/disk1里面的Pri GPT header + Pri GPT table
              <Start>1</Start> // Pri GPT header start
          	<End>34</End> //Pri GPT table start + Pri GPT table size 
              <Blocksize>2048</Blocksize> //原有保持不变
              <Image>
                  <GUID>{5fbaabe3-6958-40ff-92a7-860e329aab41}</GUID>  //原有保持不变
                  <Type>Plain</Type>  //原有保持不变
                  <File>PhysicalGpt.hds</File>  //原有保持不变 这里面的Gpt值就是分区里面的Gpt
              </Image>
          </Storage>
          
      
      	gpt -r show /dev/disk1:
      	   start        size  index  contents
                 0           1         PMBR
                 1           1         Pri GPT header
                 2          32         Pri GPT table
                34		2014
              2048  3907024896	  1  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
        3907026944        2191
        3907029135          32         Sec GPT table
        3907029167           1		 Sec GPT header
        
          <Storage> //对应 gpt -r show /dev/disk1 里面的GPT part
              <Start>2048</Start>  //GPT part start
              <End>3907026943</End> //GPT part start + GPT part size - 1
              <Blocksize>2048</Blocksize>
              <Image>
                  <GUID>{5fbaabe3-6958-40ff-92a7-860e329aab41}</GUID>
                  <Type>Bootcamp_UID</Type>
                  <File>032B63B0-DEDE-4DA4-8E8A-04E8C03D14D0</File> //这里填写Disk / Partition UUID
              </Image>
          </Storage>
          //如果你有多个Gpt part 这个地方就多次填写 根据index 索引按顺序填写。
      
      		gpt -r show /dev/disk1:
      	   start        size  index  contents
                 0           1         PMBR
                 1           1         Pri GPT header
                 2          32         Pri GPT table
                34		2014
              2048  3907024896	  1  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
        3907026944        2191
        3907029135          32         Sec GPT table
        3907029167           1		 Sec GPT header
        
          <Storage Protected="True">  //对应 gpt -r show /dev/disk1 Sec GPT table
              <Start>3907029135</Start> // Sec GPT table start
              <End>3907029166</End>  // Sec GPT table start + Sec GPT header size - 1
              <Blocksize>2048</Blocksize>
              <Image>
                  <GUID>{5fbaabe3-6958-40ff-92a7-860e329aab41}</GUID>
                  <Type>Plain</Type>
                  <File>PhysicalGptCopy.hds</File>
              </Image>
          </Storage>
      
      
  8. 右键DiskDescriptor.xml,选择显示介绍,复制路径显示介绍复制路径
  9. cd ‘/Users/chence/Parallels/Windows11.pvm/TOSHIBA HDWD120-2T Media (disk1).hdd’ 这里的路径记得加单引号
  10. 使用 dd 工具将 MBR、GPT 和 GPT 备份信息转储到相应的文件中
dd if=/dev/disk1 bs=512 count=1 of=./PhysicalMbr.hds
dd if=/dev/disk1 bs=512 count=33 skip=1 of=./PhysicalGpt.hds
dd if=/dev/disk1 bs=512 count=33 skip=3907029135 of=./PhysicalGptCopy.hds

skip 取的是 gpt -r show /dev/disk1:里面的Sec GPT table start
			   start        size  index  contents
		           0           1         PMBR
		           1           1         Pri GPT header
		           2          32         Pri GPT table
		          34		2014
		        2048  3907024896	  1  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
	      3907026944        2191
	      3907029135          32         Sec GPT table
	      3907029167           1		 Sec GPT header
  1. 返回parallels添加硬盘,选择现有的镜像文件,添加**/Users/chence/Parallels/Windows11.pvm/TOSHIBA HDWD120-2T Media (disk1).hdd/TOSHIBA HDWD120-2T Media (disk1).hdd**在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值