Etendre le VG

Bonjour,
Je suis à peu près sûr que j’ai déjà fait cette manip il y a qqs mois, mais impossible de retrouver …
Voilà, j’ai un système virtualisé (VMWare) dont j’ai agrandit une des partition (physique pour l’OS).
Quand je fais un fdisk, j’ai bien :

Disk /dev/sdb: 193.3 GB, 193273528320 bytes

Avant il n’y avait que 150 Go
Le volume group qui utilise cette partition me dit :

# vgdisplay
  --- Volume group ---
  VG Name               vg_soft
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  16
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                7
  Open LV               7
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               150.00 GiB
  PE Size               4.00 MiB
  Total PE              38399
  Alloc PE / Size       37120 / 145.00 GiB
  Free  PE / Size       1279 / 5.00 GiB

Je n’arrive pas à l’étendre pour qu’il utilise toute la partition, pour que je puisse ensuite utiliser la place dispo pour mes LV

Avec ça si c’est pour prendre la taille libre :

lvextend -l +100%FREE /dev/tonvg/tonlv

En fait tu es en train de dire que je me pose un problème existentiel qui n’a pas lieu, c’est ça ?
Si j’étends un LV le VG associé donnera la nouvelle taille en faisant la somme des LV ?

Bonjour

En fait, c’est le pv qui doit prendre en compte l’agrandissement de son support pour que le vg qui l’utilise puisse tenir compte de l’agrandissement.


Apparemment vg_soft n’utilise qu’un seul pv.

Si le disque physique /dev/sdb a été agrandis, je ne sais pas si le pv utilise le disque entier ou une de ses partitions.

Avec :

vgdisplay -v vg_soft

tu verra quelle partition (ou disque) est utilisé(e) pour le pv qui est utilisé par vg_soft

– Si c’est /dev/sdb1 (ou autre partition du disque) il faudra d’abord agrandir la partition pour qu’elle prenne le nouvel espace disque disponible sur /deb/sdb,
puis :

pvresize /dev/sdb1

– Si c’est /dev/sdb

pvresize /dev/sdb

Bonjour,

J’utilise aussi wmware Player pour faire tourner mes VM.
C’est une opération où il faut être méthodique car plusieurs niveaux sont impactés:

  1. Le disque virtuel présenté par wmware à la machine virtuelle peut être étendu (paramètres) avant de lancer la VM.
    Ceci ne suffit pas à étendre le disque et le système de fichiers dans l’OS invité de la VM.

  2. Dans la VM, il faut étendre le LG puis étendre le FS.
    j’ai fait la manip en suivant de howto:

Bien entendu, avant de se lancer dans ces manips, il faut mieux faire une sauvegarde soit de sa VM complète, soit de ses données.


Sylvain

Okay effectivement je pensé que tu ne parvenais pas à étendre le LV, mais c’est le vg que tu cherche à étendre. (à adapter).

Dans ce cas machine redémarré après extension du disque virtuel :

  • re scanne du disque :
    rescan-scsi-bus --forcerescan

  • tu recré une partition du type 8e à la main avec l’espace libre

  • tu utilise partprobe pour prendre en compte les changement à chaud
    partprobe

  • tu créer un nouveau pv (X étant le numéro de partition bien entendu)
    pvcreate /dev/sdbX

  • tu ajoute le pv dans le vg
    vgextend tonvg /dev/sdbX

  • tu étends le lv de la place libre
    lvextend -l +100%FREE /dev/tonvg/tonlv

  • et tu finalise l’augmentation d’espace sur le système de fichier
    resize2fs /dev/tonvg/tonlv

Je ne connaissais pas partprobe il y a encore quelques temps et c’est très pratique pour faire à chaud les manipulations limitant ainsi le temps d’indisponibilité.
Déjà testé sous Xen et KVM mais jamais sous Vmware, reste à voir si le système de fichier appréciera ou pas le redimensionnement, une sauvegarde sera plus prudente, voir un arrêt des processus écrivant pour limité l’impact.
Sinon il te faudra faire les opérations depuis un live système tel que Sysrescue cd à jour.

Il doit y avoir des articles traitant de cette opération avec partprobe comme mot clé, c’est comme ça que j’étais tombé dessus :wink:

il y a la commande pvresize: https://linux.die.net/man/8/pvresize

Merci pour vos réponses,
/dev/sdb est bien la seule partition en jeu.
Avec pvresize j’ai dorénavant :
Alloc PE / Size 37120 / 145.00 GiB
Free PE / Size 8959 / 35.00 GiB

Je vais pouvoir dispatcher mes Gb :slight_smile: