GNU/Linux >> Tutoriels Linux >  >> Linux

CentOS / RHEL :Comment étendre le volume physique dans LVM en étendant la partition de disque utilisée

Le message explique comment étendre l'espace disponible dans un volume LVM en étendant la partition de disque physique à l'aide de fdisk. Cet exemple montre comment redimensionner le volume physique /dev/sdc1 de 200 Mo à 400 Mo.

Avertissement de perte de données potentielle :Cette étape supprimera la structure de partition existante et créera une nouvelle partition à sa place. Il est essentiel que la nouvelle partition soit créée exactement à la même origine que la partition supprimée, sinon une grave corruption et perte de données se produira.

Vérifier la configuration actuelle

1. Vérifiez la taille actuelle du volume physique sur le disque.

# pvdisplay /dev/sdc1
  "/dev/sdc1" is a new physical volume of "200.00 MiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc1
  VG Name               
  PV Size               200.00 MiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               EkD95A-wb04-5GHn-OH7N-suVt-vak2-AKSsyv

2. Obtenez les informations sur la configuration actuelle de LVM. Le volume logique que nous souhaitons étendre est ‘testlv’.

# lvscan
  ACTIVE            '/dev/testvg/testlv' [100.00 MiB] inherit

Désactiver le volume logique existant

1. Avant de procéder à l'expansion réelle de PV et LV, nous devons d'abord désactiver le volume logique. Utilisez la commande ci-dessous pour désactiver le LV.

# lvchange -a n /dev/testvg/testlv 

2. Vérifiez si le volume a été désactivé.

# lvscan
  inactive          '/dev/testvg/testlv' [100.00 MiB] inherit

Nous savons maintenant que le LVM n'est pas utilisé, nous pouvons donc démarrer le processus d'expansion dessus.

Étendez la partition "/dev/sda1" avec l'utilitaire fdisk

1. Afin d'étendre les informations sur la partition du périphérique physique, nous supprimons d'abord l'ancienne partition, puis nous en créons une nouvelle. Notez que nous imprimons d'abord les informations sur la partition actuelle afin de savoir précisément où commence la partition. Nous devons superposer la nouvelle partition plus grande en commençant au même bloc que l'ancienne partition.

# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p

Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x085579f4

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048      411647      204800   83  Linux

Command (m for help): d
Selected partition 1
Partition 1 is deleted

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-41943039, default 2048):          ### we will press ENTER here to select default first sector 2048
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +400M
Partition 1 of type Linux and of size 400 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Cette étape peut être interrompue à tout moment avant d'écrire la table de partition modifiée avec le "w " commande. Jusque-là, seule une copie en mémoire de la table de partition est modifiée.

À propos de la modification des tables de partition :Les informations de partition pour tous les LUN sur un périphérique physique sont conservées dans une table de partition. La commande fdisk ne manipule que cette table de partition. Le reste du disque est toujours laissé inchangé. Cela signifie que les informations de la table de partition peuvent être modifiées mais que le contenu des partitions n'est jamais touché, toujours laissé intact.

Charger la nouvelle table de partition dans le noyau

Le noyau en cours d'exécution n'a pas connaissance des nouvelles informations de partition, car fdisk modifie la table de partition en écrivant directement sur le périphérique. Normalement, le noyau ne lit les informations de partition qu'au démarrage du système ou lorsqu'un événement de connexion à chaud (tel que l'insertion d'un périphérique USB) se produit.

Cependant, nous pouvons éviter un redémarrage inutile en obligeant le noyau à relire ses informations de partition, puis à mettre à jour ses informations LVM.

# partprobe

Maintenant que le noyau est au courant de la table de partition mise à jour, informez le sous-système LVM de cette modification du périphérique physique. Par défaut, le redimensionnement utilisera la taille entière de la partition obtenue à partir de la table de partition :

# pvresize /dev/sdc1 
  Physical volume "/dev/sdc1" changed
  1 physical volume(s) resized / 0 physical volume(s) not resized
# pvdisplay /dev/sdc1
  --- Physical volume ---
  PV Name               /dev/sdc1
  VG Name               testvg
  PV Size               399.00 MiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              99
  Free PE               74
  Allocated PE          25
  PV UUID               EkD95A-wb04-5GHn-OH7N-suVt-vak2-AKSsyv

Activer le volume logique existant

La dernière étape consiste à remettre le LVM modifié en ligne. Comme toujours, nous vérifions d'abord notre travail :

# lvscan
  ACTIVE            '/dev/testvg/testlv' [100.00 MiB] inherit

Comme le montre la sortie ci-dessus, le volume logique est inactif. Alors activons-le d'abord.

# lvchange -a y /dev/testvg/testlv
# /usr/sbin/lvscan
ACTIVE '/dev/vgtest/lvtest' [100.00 MB] inherit

Redimensionner le volume logique (facultatif)

1. Vous pouvez maintenant également étendre le volume logique car vous disposez désormais de plus d'espace dans le volume physique sous-jacent. Utilisez la commande ci-dessous pour redimensionner le LV.

# lvresize -L +200M /dev/testvg/testlv 
  Size of logical volume testvg/testlv changed from 100.00 MiB (25 extents) to 300.00 MiB (75 extents).
  Logical volume testvg/testlv successfully resized.

2. Vérifiez la nouvelle taille du volume logique.

# lvscan
  ACTIVE            '/dev/testvg/testlv' [300.00 MiB] inherit


Linux
  1. Lum – Comment étendre une partition avec un LVM et le volume physique contenu et le volume logique ?

  2. Comment vérifier les blocs défectueux sur un volume physique Lvm ?

  3. RHEL / CentOS :Comment réduire le volume LVM

  4. CentOS / RHEL 6 :Comment changer le nom du groupe de volumes pour le périphérique de disque racine

  5. CentOS / RHEL :Comment créer une nouvelle partition swap basée sur LVM

Comment étendre le disque ASM à partir du niveau du système d'exploitation dans CentOS/RHEL

CentOS / RHEL :Comment supprimer un volume LVM

CentOS / RHEL :Comment ajouter un nouveau volume physique à un groupe de volumes existant

CentOS / RHEL :comment redimensionner (étendre) le volume physique (PV) existant

Comment déplacer le swap d'une partition de disque vers un volume LVM sous Linux

Étendre le groupe de volumes après avoir étendu le volume physique