Sous Linux, j'avais l'habitude de redimensionner les partitions MBR à l'aide de fdisk, même sur des systèmes de fichiers en direct, puis d'émettre un resize2fs / pvresize / ... (selon le type de fs) pour obtenir le nouvel espace alloué.
Dernièrement, j'utilise des partitions Xen et GPT, et j'ai remarqué que malheureusement parted ne semble pas permettre le redimensionnement à la volée d'une partition montée, en fait, il se plaindra:
Error: Partition XXX is being used. You must unmount it before you modify it with Parted.
J'ai essayé à la fois la resize
commande et la combinaison even rm
+ mkpart
, mais ils se plaindront tous les deux de la partition montée.
Comment puis je faire ça?
linux
partitioning
gpt
cyberz
la source
la source
Réponses:
La façon la plus sûre de le faire est de démarrer en utilisant un support d'urgence (un CD live ou similaire) et d'utiliser GParted, qui redimensionnera la partition et le système de fichiers qu'elle contient. Cela ne fonctionnera cependant que si la partition n'est pas actuellement utilisée.
Si vous ne pouvez pas vous permettre de temps d'arrêt, vous pouvez essayer d'utiliser
gdisk
au lieu departed
. Vous devrez supprimer la partition que vous souhaitez redimensionner et en créer une nouvelle à sa place avec le même point de départ, comme vous l'auriez fait avecfdisk
.gdisk
est disposé à travailler sur un disque en cours d'utilisation, bien que le noyau ne puisse enregistrer aucune modification. Dans ce cas, vous devrez peut-être utiliserpartprobe
oukpartx
faire en sorte que le noyau accepte la nouvelle table de partition, ou même redémarrer l'ordinateur si cela ne fonctionne pas. (Cela devrait être assez similaire à l'utilisationfdisk
.)la source
gdisk
dans leurs référentiels, et j'ai entendu dire quegdisk
cela sera inclus dans la prochaine version de RHEL (et donc de CentOS).gdisk
est disponible en EPEL.partx
et j'aipartprobe
finalement dû redémarrer. Merci quand même pour ces conseilsCela ne fonctionne généralement qu'avec les distributions Linux plus récentes. Outils nécessaires:
Une partition GPT stocke un en-tête de sauvegarde à la fin du disque. Si vous avez redimensionné le périphérique sous-jacent, l'en-tête de sauvegarde sera quelque part au milieu. La première étape consiste à déplacer l'en-tête de partition à la fin du disque.
En supposant que le disque est / dev / sda et la partition est / dev / sda3 (doit également être la dernière partition):
Supprimez ensuite la dernière partition et recréez-la:
Vous verrez généralement un message indiquant que le noyau n'est pas en mesure de recharger la table de partition. Vous devez exécuter partprobe pour que la partition soit enregistrée avec la nouvelle taille:
Si cela échoue, vous devrez redémarrer la machine virtuelle. Après cela, vous pouvez développer votre système de fichiers avec l'outil approprié, pour ext4 etc.:
Attention : l'exécution de sgdisk peut être destructrice. Assurez-vous que des procédures de sauvegarde appropriées sont en place.
la source
partprobe
étape - j'ai toujours pensé qu'il était nécessaire de redémarrer lors de la modification de la table de partition avec les partitions montées.Voici un exemple qu'un outil automatisé utilise pour redimensionner une partition en ligne, en une seule fois:
Voici la liste des options de la commande sgdisk:
gdisk /dev/xvda; p
sortie pour réutiliser le même uid/ dev / xvda était le disque que nous avons repartitionné.
Il supprime donc et crée immédiatement une nouvelle partition à sa place.
PS. Quelques notes sur le code de type '0700'. De l'homme SGDISK (8)
Trouvé la meilleure explication de ce que «0700» signifie ici - http://www.rodsbooks.com/gdisk/walkthrough.html
Dans mon cas, je pense que c'était une partition Linux ext4, mais le code de type de la partition ne signifie pas le type de système de fichiers, donc '0700' ressemble plus à un type catchall pour sgdisk. Au moins dans les cas que j'ai vus.
PPS. Vous devrez peut-être exécuter le
partprobe
noyau pour prendre connaissance de la modification du partitionnement sans redémarrer le système.la source
Je résume juste quelques réponses et commentaires ici:
parted
refusera simplement de modifier une partition montée.gdisk
fera le travail pour vous, mais il ne se trouve pas dans le référentiel RHEL ou CentOS standard. Il se trouve cependant dans le référentiel EPEL .Gardez à l'esprit que la modification des partitions sur un disque en cours d'utilisation peut empêcher le noyau d'enregistrer les modifications. Si cela se produit, l' utilisation
partprobe
,partx
ou le redémarrage.la source
Demandez-vous de redimensionner un volume logique? Voici comment je le ferais:
OU (xfs):
la source
-r
àlvextend
, alors il invoqueresize2fs
pour vous.fdisk
est généralement toujours disponible et peut le faire si la partition est la dernière partition et que le début de la partition ne bouge pas.Cependant, il s'agit d'une opération dangereuse qui doit être effectuée avec grand soin. Faites une sauvegarde!
la source