web-dev-qa-db-fra.com

Comment redimensionner une partition LVM? (c.-à-d. volume physique)

Je souhaite réduire ma deuxième partition (LVM) afin de créer une nouvelle partition dans le nouvel espace libéré. J'utilise le Live CD pour le faire, car je sais que je ne peux pas redimensionner/déplacer cette partition pendant son utilisation. Lorsque j'ai ouvert GParted dans le Live CD, j'ai compris que je ne pouvais pas redimensionner la partition, car lorsque je clique dessus avec le bouton droit de la souris, l'option "redimensionner/déplacer" est désactivée.

J'ai essayé de le démonter, de le "paresser" (umount -l /dev/sda2) mais cela n'a pas fonctionné.

Une capture d'écran de GParted:

GParted screenshot

85
Idan Yadgar

Il semble y avoir beaucoup de résultats sur Google où les gens avaient des problèmes similaires. Un exemple:

Sauvegardez toutes vos données importantes avant de tenter ceci. Supposez toujours que vous pouvez perdre toutes vos données lorsque vous redimensionnez des partitions.

réduire LVM sans perte de données

Ce fil de discussion suggère la procédure suivante. Dans cet exemple, nous réduisons une partition de 10G à 9G:

Tout d'abord, nous démontons.

Sudo umount /dev/vg_blah/lv_blah

Vérifiez le système de fichiers.

Sudo e2fsck -f /dev/vg_blah/lv_blah

Redimensionnez le système de fichiers et le volume logique. Faire cela en une étape peut éviter les erreurs qui causent une perte de données. (Remarque Le paramètre lvreduce -L interprète G en tant que 2 ^ 30 octets et g en tant que 10 ^ 9 octets.)

Sudo lvreduce --resizefs -L 9G /dev/vg_blah/lv_blah

(facultatif) Supprimez un lecteur physique du groupe de volumes si vous le souhaitez (si vous avez maintenant un lecteur inutilisé).

Sudo vgreduce vg_blah /dev/sdxy

Tout le crédit va à brianmcgee .

Remarque: vgreduce échouera avec cannot resize to xxxxx extents as later ones are allocated si vous avez un autre lv à la fin du disque - j’ai eu un swap lv, que j’ai supprimé. Voir Comment réduire les volumes logiques et physiques d’Ubuntu LVM? pour obtenir de l’aide sur cette situation.

47
pzkpfw

Vous pouvez facilement réduire ou agrandir un volume logique à l'aide d'un outil graphique: system-config-lvm. Étant donné que system-config-lvm n'est pas préinstallé, une fois démarré à partir d'un live-cd, vous devez l'installer:

Sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
Sudo apt-get update
Sudo apt-get install system-config-lvm

Une fois installé, lancez le programme, sélectionnez le volume logique que vous souhaitez modifier dans le panneau de gauche, cliquez sur "Modifier les propriétés".

Main Logical Volume Management program GUI

Modifiez maintenant les paramètres à votre guise!

Edit Logical Volume window

Une bonne chose à propos de system-config-lvm est qu’il ne vous permettra pas de continuer si la nouvelle taille de la partition est plus petite que toutes vos données existantes combinées (je viens d’essayer cela et de le constater moi-même).

Références:

  1. tutoriel How-To Geek (c'est l'origine des images).
  2. Guide complet de Red Hat pour le programme.
45
Cao Minh Tu

Note: Vous devriez exécuter presque toutes les commandes suivantes en utilisant un Live CD. Parfois, il vous demande de démonter la partition qui a déjà été montée sur/(dans ce cas, vous ne pouvez pas la démonter).

Voici toutes les étapes nécessaires pour redimensionner une partition LVM ou LVM2:

Sudo lvresize --verbose --resizefs -L -150G /dev/mapper/ubuntu

Sudo pvresize --setphysicalvolumesize {some-space} /dev/sda5

Si la deuxième commande produit quelque chose comme ceci:

/dev/sda5: cannot resize to xxxxx extents as later ones are allocated.

Ensuite, vous devez réorganiser l'espace non alloué à la fin du LVM. Cela signifie après la partition root et swap_1. Ainsi, dans un premier temps, vous devez vérifier les informations des volumes physiques à l'aide de la commande ci-dessous:

Sudo pvs -v --segments /dev/sda5

Cela montrera la sortie comme:

/dev/sda5 ubuntu lvm2 a-- 698.04g 150g   0 xxx root 0 linear /dev/sda:0-rrr
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx sss 0 free                          
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g zzz ttt swap 0 linear /dev/sda5:yyy-www

Notez le yyy-www . Utilisez la commande suivante pour supprimer la fragmentation externe:

Sudo pvmove --alloc anywhere /dev/sda5:yyy-www

Voyons maintenant comment ça se passe:

Sudo pvs -v --segments /dev/sda5

Cela montrera le résultat comme (notez les changements):

/dev/sda5 ubuntu lvm2 a-- 698.04g 150g   0 xxx root 0 linear /dev/sda:0-rrr
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx ttt swap 0 linear /dev/sda5:xxx-sss
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g yyy www 0 free

Après cela, utilisez le GParted et redimensionnez le LVM en fonction de la superficie maximale utilisée et restez dans un espace non alloué. Prendre plaisir...

23
UJJAL

Je recommanderais un autre outil graphique - KVPM . Il combine les fonctionnalités de GParted et de system-config-lvm. De plus, il autorise certaines opérations sur les partitions actives (montées) que system-config-lvm ne permet pas Cependant, le volume doit être démonté pour pouvoir être réduit.

enter image description hereenter image description here

Il est dans le référentiel des univers depuis Ubuntu 12.04, alors Sudo apt-get install kvpm

Remarque: démarrez-le avec les droits root Sudo kvpm

15
Kos

Seule la dernière version de Gparted (0.14) prend en charge le redimensionnement des volumes physiques LVM. La version livrée avec Ubuntu 12.10 ou 13.04 ne la prend pas en charge.

Voici comment redimensionner un volume physique LVM:

  1. Si le groupe de volumes associé au volume physique LVM ne dispose pas de suffisamment d'espace non alloué, vous devez en créer un en réduisant le volume logique. Regardez réponse de bigbadonk42 pour des instructions sur la façon de procéder. Vous pouvez également utiliser les disques GNOME (inclus avec Ubuntu) pour certaines étapes si vous préférez une interface graphique.

  2. Gravez le dernière image .iso du site Web de GParted , puis gravez-le sur un CD ou sur une clé USB. Démarrez à partir du CD ou de la clé USB. Alternativement, vous pouvez compiler la dernière version de GParted à partir du source.

  3. Utilisez GParted pour redimensionner le volume physique LVM. GParted ne vous permettra pas de réduire le volume physique LVM à une taille inférieure à celle autorisée par l'espace non alloué.

12
Flimm

J'ai trouvé cette réponse par accident, mais cela a fonctionné pour moi au moins. Dans mon cas, j'avais déjà un espace disque non alloué réservé après la racine, aussi je passe à côté de la partie qui explique comment vous obtenez plus d'espace et explique simplement comment je l'ai utilisé sous root sans démarrer.

REMARQUE: au lieu d'utiliser gparted, il vaut probablement mieux utiliser system-config-lvm. La prochaine fois, j'utiliserais celui-là à la place ... Ma version gparted était la 0.18.

  1. J'ai d'abord utilisé gparted pour étendre le plus possible la partition racine. À ma grande surprise, il ne couvrait que les tailles physiques et ne faisait rien à la partie logique. Donc, la commande df -k a dit que le disque était toujours plein.
  2. lvresize -l +100%FREE /dev/ubuntu-vg/root étend la partition logique aussi loin que possible. Nul besoin de vérifier et de calculer des Go ou des blocs selon différentes méthodes.
  3. resize2fs /dev/ubuntu-vg/root est alors la troisième étape que j'ai faite: il étend le système de fichiers à la taille de la partition logique.

La dernière étape peut être fusionnée dans la seconde:

lvresize -l +100%FREE --resizefs /dev/ubuntu-vg/root

8
Timo Riikonen

Outre les @ bigbadonk42answer , au lieu de procéder comme suit:

resize2fs -p /dev/vg_blah/lv_blah 9G
lvreduce -L -1G /dev/vg_blah/lv_blah

Faire:

lvreduce -r -L 9G /dev/vg_blah/lv_blah

Notez le -r qui réduit le système de fichiers simultanément et est sûr.

1
eyeinsky

Avertissement concernant actuellement le plus voté réponse : Pour PAS détruire votre nouvelle installation par défaut avec l'option LVM (14.04 Trusty Tahr) , 1) lisez toute la page, 2) supprimez le swap 3) et modifiez probablement la commande "Réduire la taille du volume logique" comme ceci:

lvreduce -L -1g /dev/vg_blah/lv_blah

Je recommande fortement system-config-lvm.

0
user293759

Pour le faire en utilisant GParted, cliquez avec le bouton droit de la souris sur dev/sda2 (que vous souhaitez réduire). Sélectionnez 'Désactiver'. Vous pourrez maintenant redimensionner votre partition LVM.

Mise à jour: la solution @Cao Min Tu est bien meilleure. J'ai eu peu de problèmes avec GParted après le redimensionnement

0
Junaid