GNU/Linux >> Tutoriels Linux >  >> Linux

Comment les commandes telles que fdisk -l trouvent-elles la taille du secteur ?

La taille du secteur d'un appareil n'est pas stockée dans le MBR.

Commandes de l'espace utilisateur telles que fdisk utilisez le BLKBSZGET et BLKSSZGET ioctl s pour récupérer les tailles de secteur des disques. Ces ioctl Les s sont gérés par des pilotes dans le noyau, qui récupèrent les informations pertinentes à partir des lecteurs eux-mêmes.

(Il n'y a pas beaucoup de documentation sur le ioctl pertinent s ; vous devez vérifier le code source du noyau.)

Vous pouvez voir les informations pertinentes à l'aide d'autres outils qui interrogent directement les lecteurs, par exemple hdparm . Sur un petit SSD, hdparm -I me dit

[...]
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
[...]

Sur un grand disque en rotation avec des secteurs de 4K, j'obtiens à la place

[...]
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
[...]

Il y a quelques questions là-dedans, j'ai essayé de trouver la réponse à "Où fdisk trouve-t-il la taille de secteur d'un disque?" Le mieux que j'ai trouvé est qu'il obtient les informations de ioctl .

ioctl infos sur Wikipédia et page de manuel Linux.

lien du code source fdisk


Linux
  1. Comment savoir si le disque est un SSD ou un disque dur sous Linux

  2. Comment trouver des fichiers dans un secteur donné ?

  3. Comment trouver la taille du tampon de socket de Linux

  4. Comment diriger les résultats de 'find' vers mv sous Linux

  5. Comment trouver l'UUID d'un système de fichiers

Comment trouver le numéro de port d'un service sous Linux

Comment trouver la taille d'un répertoire sous Linux

Comment trouver l'adresse IP d'une machine virtuelle KVM

Comment trouver la taille totale d'un répertoire sous Linux

Comment rechercher des fichiers avec la commande fd sous Linux

Comment trouver la liste des référentiels installés sous Linux