Est-il possible d'agrandir la partition / sans redémarrer?

Je peux agrandir la partition racine ( / ) avec fdisk sans redémarrer (en supprimant une recréer avec le même 1er secteur, mais plus grand dernier secteur).

Cependant, je ne peux pas faire le kernel pour relire la table de partition :

 # partx -va /dev/vda partx: /dev/vda: adding partition #5 failed: Device or resource busy partx: /dev/vda: error adding partition 5 # kpartx -va /dev/vda device-mapper: reload ioctl on vda5 failed: Invalid argument add map vda5 : 0 41492480 linear 0:0 2048 # hdparm -z /dev/vda /dev/vda: re-reading partition table BLKRRPART failed: Device or resource busy # sfdisk -R /dev/vda BLKRRPART: Device or resource busy This disk is currently in use. 

Je sais ce que je fais, et les filesystems ext au sein des partitions supportent l'agrandissement en ligne.

Existe-t-il un moyen de forcer le kernel à mettre à jour sa table de partition?

EDIT : Je connais LVM, mais ce n'est pas une réponse à cette question.

Le kernel utilisera l'ancienne table de partition (caching) jusqu'à ce que vous démontiez toutes les partitions du disque concerné. Comme vous ne pouvez pas le faire avec la partition /, l'option que vous avez est de redémarrer. La prochaine fois essayez d'utiliser LVM.

Pour resize le système de files en ligne, en particulier /, vous devez disposer d'une forme d'abstraction entre la couche physique et la couche virtuelle, par exemple LVM.

Pour resize l'utilisation de LVM:

 pvcreate /dev/sdX vgcreate vg1 /dev/sdX lvcreate Root -L10G 

La prochaine fois que le disque est sur le point d'être plein, vous utiliserez lvextend /dev/mapper/vg1-Root -L+10G --resizefs et vous aurez plus d'espace.

Lisez sur LVM sur http://linux.die.net/man/8/lvm

MODIFIER

Pour requestr poliment au kernel de mettre à jour la table de partition qui est caching, vous pouvez essayer partprobe Mais je ne supposerais pas que cela fonctionne comme vous l'avez dit, remonter tous vos filesystems, ce qui est difficile à less que vous démarrez dans un live vm.