La dimensione del settore di un dispositivo non viene memorizzata nell'MBR.
Comandi in spazio utente come fdisk usa il BLKBSZGET e BLKSSZGET ioctl s per recuperare le dimensioni dei settori dai dischi. Quei ioctl s sono gestiti dai driver nel kernel, che recuperano le informazioni rilevanti dalle unità stesse.
(Non c'è molta documentazione sul relativo ioctl S; devi controllare il codice sorgente del kernel.)
Puoi visualizzare le informazioni pertinenti utilizzando altri strumenti che interrogano direttamente i drive, ad esempio hdparm . Su un piccolo SSD, hdparm -I mi dice
[...]
Logical Sector size: 512 bytes
Physical Sector size: 512 bytes
Logical Sector-0 offset: 0 bytes
[...]
cache/buffer size = unknown
Form Factor: 2.5 inch
Nominal Media Rotation Rate: Solid State Device
[...]
Su un grande disco rotante con settori 4K, ottengo invece
[...]
Logical Sector size: 512 bytes
Physical Sector size: 4096 bytes
Logical Sector-0 offset: 0 bytes
[...]
cache/buffer size = unknown
Form Factor: 3.5 inch
Nominal Media Rotation Rate: 5400
[...]
Ci sono alcune domande lì dentro, ho provato a rintracciare la risposta a "Dove trova fdisk la dimensione del settore di un disco?" Il meglio che ho trovato è che ottiene le informazioni da ioctl .
ioctl informazioni su Wikipedia e sulla pagina man di Linux.
collegamento al codice sorgente di fdisk