Lorsque j'exécute fdisk et modifie la taille d'une partition, fdisk dit à la fin de sa sortie:
The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8)
J'aimerais le faire sans avoir à redémarrer (puis à écrire un script qui le fasse) Comment utiliser kpartx pour le faire correctement? J'ai essayé:
kpartx -f -v /dev/mmcblk0
Quelles sorties:
mmcblk0p1 : 0 102400 /dev/mmcblk0 2048
mmcblk0p2 : 0 7657472 /dev/mmcblk0 104448
et:
kpartx -a -v /dev/mmcblk0
qui génère:
device-mapper: reload ioctl on mmcblk0p1 failed: Invalid argument
create/reload failed on mmcblk0p1
add map mmcblk0p1 (0:0): 0 102400 linear /dev/mmcblk0 2048
device-mapper: reload ioctl on mmcblk0p2 failed: Invalid argument
create/reload failed on mmcblk0p2
add map mmcblk0p2 (0:0): 0 7657472 linear /dev/mmcblk0 104448
C'est pour une carte SD dans un debian fonctionnant avec raspi.
EDIT: Pour clarifier ce que j'essaie de faire; Je supprime un p3 inutilisé d'une carte SD et redimensionne p2 pour remplir la carte. La carte contient actuellement une petite partition de démarrage p1 et p2 est l'endroit où se trouve le système d'exploitation.
partprobe
aide?Réponses:
Vous ne voulez
partx -u
paskpartx
(qui fonctionne sur les appareils de mappage de périphériques).la source
-u
drapeau?man partx
aurait répondu à cela.Je pense que @derobert (qui a commenté la question d'origine) est probablement correct. Dans le cas où fdisking une partition qui est actuellement utilisée, il semble qu'il n'y ait pas d'autre option que de redémarrer.
Même lorsque j'utilise
partprobe
(qui est obtenu avecapt-get install parted
) j'obtiens la sortie suivante:la source
parted
/partprobe
ne donneront pas une telle erreur et peuvent être utilisées sur une partition montée sans redémarrage.parted
mais j'obtiens toujours la même erreur. La solution consiste à démonter le périphérique avant de l'exécuterparted
, vous n'avez donc pas à redémarrer votre système pour informer le noyau d'utiliser la nouvelle partition au lieu de l'ancienne partitionJ'obtenais ce problème parce que j'avais oublié de démonter l'appareil. Après un:
fdisk a fonctionné correctement.
la source