Relecture forcée de la table de partition: différence entre BLKRRPART et BLKPG ioctl? (Linux)

8

Lorsque je veux que Linux considère les partitions nouvellement créées sans redémarrer, j'ai plusieurs outils disponibles pour forcer une actualisation du "cache de partition" du noyau:

  • partx -va /dev/sdX
  • kpartx -va /dev/sdX
  • hdparm -z /dev/sdX
  • sfdisk -R /dev/sdX
  • ...

Je ne suis pas sûr de la différence entre ces techniques, mais je pense qu'elles n'utilisent pas la même chose ioctl, comme BLKRRPARTou BLKPG. Alors, quelle est la différence entre ceux-ci ioctl?

Totor
la source
Probablement pas du tout. kpartxest dérivé de partx, sfdiskest un autre outil d'édition de partition. hdparmest pour d'autres utilisations, mais a également un moyen de lire la table de partition dans le noyau. Si vous avez vraiment besoin de le savoir, regardez le code source.
ctrl-alt-delor

Réponses:

5

BLKRRPART indique au noyau de relire la table de partition. man 4 sd

Avec BLKPGvous pouvez créer, ajouter, supprimer des partitions à votre guise (depuis le noyau, pas sur le disque bien sûr). Vous devez indiquer au noyau l'offset et la taille de la partition individuelle, ce qui implique que vous devez avoir préalablement analysé la table de partition. Voir le noyau Linux:/include/uapi/linux/blkpg.h

J'utilise personnellement partprobe(une partie de parted) , qui utilise cette dernière approche, probablement pour prendre en charge les tables de partition non prises en charge par le noyau.

Rondom
la source