Parfois, lors du redimensionnement ou de la manipulation de partitions sur un disque, cfdisk dira:
Wrote partition table, but re-read table failed. Reboot to update table.
(Cela se produit également avec d'autres outils de partitionnement. Je pense donc qu'il s'agit d'un problème lié à Linux plutôt qu'à un problème de cfdisk.) Pourquoi, pourquoi et pourquoi cela ne se produit-il que de temps en temps et que puis-je faire pour l'éviter?
Remarque: Veuillez supposer qu'aucune des partitions que je suis en train de modifier n'est ouverte, montée ou utilisée.
Mise à jour:
cfdisk demande ioctl(fd, BLKRRPART, NULL)
à Linux de relire la table de partition. Deux des autres outils recommandés jusqu'ici ( hdparm -z
DEVICE
, sfdisk -R
DEVICE
) font exactement la même chose. La partprobe
DEVICE
commande, par contre, semble utiliser un nouvel ioctl appelé BLKPG, qui pourrait être meilleur; Je ne sais pas. (Il se rabat également sur BLKRRPART si BLKPG échoue.)
BLKPG semble être une opération "cette partition a changé; voici la nouvelle taille" et ressemble à l' partprobe
appelée individuellement sur toutes les partitions du périphérique transmis. Elle devrait donc fonctionner si les partitions individuelles sont inutilisées. Cependant, je n'ai pas eu l'occasion de l'essayer.
man sfdisk
dit:Since version 2.26 sfdisk no longer provides the -R or --re-read option to force the kernel to reread the partition table. Use blockdev --rereadpt instead.