On Tue, Jul 02, 2019 at 11:43:34AM +0100, Mike Fleetwood wrote: > Hi, > > Tested with mkntfs from ntfsprogs and blkid and wipefs from util-linux git HEAD. > Test case: > > # mkntfs -Q -F /dev/sdb > /dev/sdb is entire device, not just one partition. > mkntfs forced anyway. > Cluster size has been automatically set to 4096 bytes. > Creating NTFS volume structures. > mkntfs completed successfully. Have a nice day. > # ./blkid --version > lt-blkid from util-linux 2.34.24-e3bb9 (libblkid 2.34.24, 14-Jun-2019) > # ./blkid /dev/sdb > /dev/sdb: UUID="3B64D28A5CF89146" TYPE="ntfs" PTTYPE="dos" > # ./wipefs /dev/sdb > DEVICE OFFSET TYPE UUID LABEL > sdb 0x3 ntfs 3B64D28A5CF89146 > sdb 0x1fe dos So what we call the dos partition table, Microsoft calls the "boot sector", and it's not necessarily a partition table at all. (Note also that normally, Microsoft won't let you put an ntfs file system on the whole disk --- and you had to force this with mkntfs -F. It's actually a bad idea, because some versions of Windows will see what it thinks is an empty disk, and the contents of that whole disk file system can be very easily overwritten by a confused Windows OS.) You can see this in include/layout.h in the ntfs-3g sources. This is a pretty broad and general confusion; fdisk will get confused and think it is an empty dos partition table, and blkid will as well. I suspect the right answer here is if the oem_id is "NTFS ", we should not consider it a dos partition table at all, even if there is an "end of boot sector" magic value of 0xaa55 at the end of the sector. - Ted