在 fdisk 实用程序中看不到分区

在 fdisk 实用程序中看不到分区

这几个小时我一直在挣扎。

删除所有现有分区并使用以下命令在(几乎卸载的)可移动 USB 介质上创建一个新分区:

$ sudo fdisk /dev/sdb1

Command (m for help): n

Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-30296063, default 2048): 2048
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-30296063, default 30296063): 30296063
Created a new partition 1 of type 'Linux' and of size 14,5 GiB.

然后使用以下命令更改分区类型:

Command (m for help): t
Hex code (type L to list all codes): c
Changed type of partition 'Linux' to 'W95 FAT32 (LBA)'.

应用的更改:

Command (m for help): w
The partition table has been altered.
Syncing disks.

通知内核更改:

$ sudo partprobe

到目前为止,一切都很好。之后,我在新分区上创建了 FAT32 文件系统:

$ sudo mkfs -t vfat /dev/sdb1
mkfs.fat 4.1 (2017-01-24)

将设备挂载到虚拟目录:

$ sudo mount /dev/sdb1 /media/xxx

一切似乎都很好,但是当我想使用 fdisk 实用程序再次检查设备上的分区时:

$ sudo fdisk /dev/sdb1
Disk /dev/sdb1: 14,5 GiB, 15511584768 bytes, 30296064 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: 0x00000000

最终出现奇怪的磁盘标识符并且根本没有分区表(为什么?)。但是当我运行这个命令时:

$ sudo fdisk -l
Disk /dev/sdb: 14,5 GiB, 15518924800 bytes, 30310400 sectors
Disk model: TransMemory     
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: 0x03eba3c3

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1        2048 30298111 30296064 14,5G  b W95 FAT32

是的,分区表在这里,但分区类型是 W95 FAT32 而不是 W95 FAT32 (LBA)。那么我做错了什么?这种行为正常吗?

答案1

fdisk对整个磁盘进行操作,而不是对单个分区进行操作。即,使用fdisk -l /dev/sdb.

相关内容