我需要检查混合 MBR/GPT USB 棒的 MBR 部分。
我的 fdisk 版本 ( fdisk from util-linux 2.29
) 列出了 GPT 分区表,而旧版本的 fdisk 没有列出。
尝试过的解决方案:
我在手册页中找不到任何强制读取 MBR 表的开关,-c=dos
启用 dos 兼容模式也没有任何改变。将前 512 个字节复制到文件中,然后使用 fdisk 可以显示 MBR 分区表,但不太方便。
如何获取 MBR 分区表?
输出:
$ sudo dd if=/dev/sdb of=first512.img bs=512 count=1
1+0 records in
1+0 records out
512 bytes copied, 0,0010523 s, 487 kB/s
$ fdisk -l ./first512.img
Disk ./first512.img: 512 B, 512 bytes, 1 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: dos
Disk identifier: 0x55e7aea2
Device Boot Start End Sectors Size Id Type
./first512.img1 * 22528 153599 131072 64M 7 HPFS/NTFS/exFAT
./first512.img2 1 22527 22527 11M ee GPT
./first512.img4 153600 15417343 15263744 7,3G ee GPT
Partition table entries are not in disk order.
$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 7,4 GiB, 7893680128 bytes, 15417344 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: 510488E2-D768-4675-A53D-16E041F51641
Device Start End Sectors Size Type
/dev/sdb1 2048 22527 20480 10M EFI System
/dev/sdb2 22528 153599 131072 64M Microsoft basic data
/dev/sdb3 153600 163839 10240 5M BIOS boot
/dev/sdb4 163840 15417278 15253439 7,3G Linux filesystem
答案1
fdisk -t dos -l /dev/sdx
成功了。