我正在构建一个新的计算机系统,使用 Windows 7 Professional 和 Ubuntu。我正在遵循本教程:
我希望能够在 Linux 中的 VirtualBox 中运行我的 Windows 7 安装,而且还可以从 BIOS 启动它,以便在必要时充分利用硬件。
因此,当我尝试创建使用创建的虚拟磁盘的新分区表时,我没有遇到任何问题mdadm
。
如果我运行,fdisk -l
我会得到这个:
Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
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: 078AFEF0-6B0F-443D-8572-3D6413D0FF63
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 206847 204800 100M EFI System
/dev/nvme0n1p2 206848 468991 262144 128M Microsoft reserved
/dev/nvme0n1p3 468992 210184191 209715200 100G Microsoft basic data
/dev/nvme0n1p4 210184192 419899391 209715200 100G Microsoft basic data
/dev/nvme0n1p5 419899392 554117119 134217728 64G Linux filesystem
/dev/nvme0n1p6 554117120 973547519 419430400 200G Linux filesystem
/dev/nvme0n1p7 973547520 1000214527 26667008 12.7G Linux swap
我运行这个来创建我的虚拟磁盘:
mdadm --build /dev/md0 --level=linear --raid-devices=4 /dev/loop0 /dev/nvme0n1p1 /dev/nvme0n1p2 /dev/nvme0n1p3
但是当我尝试/dev/md0
使用gdisk
我的设备进行分区时,结束于 210184158 而不是 210184191,缺少 33 个扇区。EFI 分区工作正常,但是当我使用 210184158 作为结束扇区时,NTFS(主 Windows 分区)无法正确读取。为什么mdadm
我的最后一个设备上缺少 33 个扇区?
答案1
您的fdisk
输出包含以下行:
磁盘标签类型:gpt
GPT 磁盘在磁盘的最末端存储了磁盘分区表和磁盘头的备份。您可以阅读这里:
磁盘最后一个逻辑扇区之前的 16 KiB(默认)
次要 GPT 表 - 它与主表逐字节相同。主要用于在主分区表损坏的情况下进行恢复。
磁盘的最后一个逻辑扇区或最后 512 个字节
辅助 GPT 标头 - 包含唯一磁盘 GUID、辅助分区表的位置、分区表中可能的条目数、其自身和辅助分区表的 CRC32 校验和、主 GPT 标头的位置。如果主标头损坏,可以使用此标头恢复 GPT 信息。
由于您的扇区大小为 512 字节,因此 16KiB + 最后一个逻辑扇区对应 33 个扇区,这正是您所缺少的。