Adaptation française:
Relecture de la version française: Deny
Version : 1.0
Copyright © 2008 Joey Prestia
Copyright © 2008
Copyright © 2008 Deny
Conditions de distribution : cet article est distribué selon les conditions de la licence Open Publication License, version 1.0, du 8 juin 1999. Pour plus d'informations, consultez : http://linuxgazette.net/copying.html.
2008-10-16
Historique des versions | ||
---|---|---|
Version 1.0 | 2008-10-16 | CT |
Première traduction française. | ||
2008-03-01 | JP | |
Version originale de l'article. |
Résumé
Cet article a pour but de détailler la procédure de création d'un volume physique, d'un groupe de volumes, d'un volume logique et leur redimensionnement.
Les informations à propos de la configuration des volumes logiques sont quelque peu clairsemées, d'autant plus si vous voulez utiliser la ligne de commande. Il y a bien un outil de gestion de volume logique sous RHEL 5© mais qui requiert une interface graphique, et la plupart des serveurs ne fournissent qu'une interface console.
La partie la plus difficile lorsque l'on veut créer un volume
logique est de savoir ce qu'il faut créer en premier. A partir de là c'est
franchement plus facile. Premièrement nous devons créer des volumes
physiques sur notre disque dur; puis, en se basant sur ces volumes
physiques, nous crérons nos groupes de volumes; et finalement nous créerons
nos volumes logiques. Démarrons avec un disque dur qui n'est pas
partitionné—je veux dire, un disque dur que nous venons d'ajouter dans
notre système. Exécuter fdisk -l pour voir comment est
assigné le disque (nous utiliserons /dev/sdb
dans cet
exemple). Tant que nous sommes dans fdisk, créer deux
partitions de même taille (500 Mo), et s'assurer qu'elles ont le type '8e'
(LVM)
[root@localhost ~]#
fdisk /dev/sdb
Disk /dev/sdb: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 200 1020096 8e Linux LVM
/dev/sdb2 201 400 1020096 8e Linux LVM
Appliquer les changements et quitter fdisk, puis utiliser la commande partprobe pour recharger la table des partitions.
[root@localhost ~]#
partprobe
À présent que nous avons rechargé la table des partitions, nous
allons pouvoir créer nos volumes physiques sur nos partitions de disque
dur—celles que nous avons marquées comme Linux
LVM quand nous utilisions la commande
dans fdisk. Nous utiliserons
pvcreate pour effectuer cette tâche. Nous pouvons
spécifier les deux partitions sur une seule ligne, la commande pvcreate ne nous en tient pas rigueur.
[root@localhost ~]#
pvcreate /dev/sdb1 /dev/sdb2
Physical volume "/dev/sdb1" sucessfully created
Physical volume "/dev/sdb2" sucessfully created
Nous avons maintenant deux volumes physiques, et nous pouvons créer nos groupes de volumes à partir de ça. Nous utiliserons la commande vgcreate pour cette opération, et cette fois nous allons spécifier un nom pour le groupe de volumes que nous allons créer. Nous n'utiliserons qu'une seule partition et réserver l'autre pour plus tard.
[root@localhost ~]#
vgcreate VolumeGroup_1 /dev/sdb1
Volume group "VolumeGroup_1" successfully created
Jusqu'ici tout va bien. Jetons un oeil aux statistiques de ce groupe de volumes—nous utiliserons vgdisplay. Nous avons besoin de porter une attention particulière aux sections VG Size et Total PE. PE est le nombre d'extensions physiques que nous pouvons utiliser. Nous voulons éviter d'épuiser le nombre d'extensions physiques, car cela nous empêcherait de pouvoir redimentionner nos volumes logiques—ce que nous ferons plus avant
[root@localhost ~]#
vgdisplay
--- Volume group ---
VG Name VolumeGroup_1
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size 476.00 MB
PE Size 4.00 MB
Total PE 119
Alloc PE / Size 0 / 0
Free PE / Size 119 / 476.00 MB
VG UUID BCkPP1-2CM1-1hxW-7B2J-yfSt-mEMJ-7fMwNL
Ceci montre que nous avons tout fait correctement; cela nous indique également le nombre d'extension physiques dont nous disposons. Ici nous en avons 119—et nous aurons besoin de 5% à 12% des extensions physiques disponibles pour exécuter les opérations de modification de la taille des volumes logiques.
À présent, créons un volume logique sur ce groupe de volumes,
puis nous pourrons monter un système de fichiers dessus. Nous utiliserons
—vous vous en doutez—la commande lvcreate. Elle est
similaire à la commande vgcreate, mais nous devons
spécifier plus de détails dans la ligne de commande pour qu'elle s'exécute
correctement. Nous utiliserons les options -l
pour
spécifier le nombre d'extensions que nous utiliserons et
-n
pour assigner un nom à notre volume logique. Nous
devrons le désigner par /dev/VolumeGroup_1
plutôt que
par la désignation physique /dev/sdb1
comme
précédemment.
[root@localhost ~]#
lvcreate -l 50 -n LogicalVolume_1 /dev/VolumeGroup_1
Logical volume "LogicalVolume_1" created
Nous avons utilisé 50 extensions dans cet exemple, soit environ 200 Mo utilisables pour le système de fichiers. Exécuter lvdisplay pour voir le résultat. Maintenant, installons un système de fichiers que nous pourrons ensuite monter et rendre utilisable.
[root@localhost ~]#
mkfs.ext3 /dev/VolumeGroup_1/LogicalVolume_1
Nommons-le /data
[root@localhost ~]#
e2label /dev/VolumeGroup_1/LogicalVolume_1 /data
Maintenant nous allons créer un répertoire
/data
et monter notre volume logique dessus.
[root@localhost ~]#
mkdir /data [root@localhost ~]#
mount /dev/VolumeGroup_1/LogicalVolume_1 /data [root@localhost ~]#
ls /data lost+found
Remplissons ce nouvel espace afin de réellement voir comment se déroule le redimensionnement du volume logique.
[root@localhost ~]#
cd /data [root@localhost data]#
dd if=/dev/zero of=crap bs=1000k count=190 190+0 records in 190+0 records out 194560000 bytes (195 MB) copied, 16.2202 seconds, 12.0 MB/s
Cette opération nous permet d'arriver à la limite de l'espace alloué à ce volume logique. Vous pouvez le voir via la commande df -h :
[root@localhost data]#
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda8 965M 302M 614M 33% /
/dev/sda1 99M 5.9M 88M 7% /boot
tmpfs 629M 0 629M 0% /dev/shm
/dev/sda7 965M 618M 298M 68% /home
/dev/sda5 9.5G 3.1G 6.0G 34% /usr
/dev/sda2 19G 8.6G 9.5G 48% /var
/dev/mapper/VolumeGroup_1-LogicalVolume_1
194M 192M 0 100% /data
Premièrement, augmentons légèrement la taille. Une manière simple de faire ça est d'utiliser la commande lvresize :
[root@localhost data]#
lvresize -l 100 /dev/VolumeGroup_1/LogicalVolume_1
Extending logical volume LogicalVolume_1 to 400.00 MB
Logical volume Log_1 successfully resized
Maintenant ça semble bon— mais nous ne pouvons pas encore utiliser cet espace ajouté. Vous devez d'abord étendre le système de fichiers sur ce nouvel espace ajouté—rappelez-vous, c'est une sorte d'« espace brut ». Nous pouvons exécuter cette opération en utilisant resize2fs. Le système de fichiers peut être monté pendant l'opération, mais je vous recommande d'arrêter toute activité du système de fichiers sur cette partition pendant que l'opération s'exécute. Si vous avez des données critiques sur cette partition vous devriez la démonter avant de redimensionner. Dans l'exemple j'ai effectué un redimensionnement en direct car notre partition ne contient aucune donnée critique.
[root@localhost data]#
resize2fs /dev/VolumeGroup_1/LogicalVolume_1
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolumeGroup_1/LogicalVolume_1 is mounted on /data; on-line resizing required
Performing an on-line resize of /dev/VolumeGroup_1/LogicalVolume_1 to 409600 (1k) blocks
The filesystem on /dev/VolumeGroup_1/LogicalVolume_1 is now 409600 blocks long
[root@localhost data]#
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda8 965M 302M 614M 33% /
/dev/sda1 99M 5.9M 88M 7% /boot
tmpfs 629M 0 629M 0% /dev/shm
/dev/sda7 965M 618M 298M 68% /home
/dev/sda5 9.5G 3.1G 6.0G 34% /usr
/dev/sda2 19G 8.6G 9.5G 48% /var
/dev/mapper/VolumeGroup_1-LogicalVolume_1
388M 193M 175M 53% /data
Comme dernier exercice, nous allons ajouter l'autre volume physique
au groupe de volumes. Supposons que nous avons besoin d'ajouter plus
d'espace à notre volume logique; comme nous avons un volume physique de
côté (/dev/sdb2
), utilisons-le. Pour cette opération
nous aurons besoin des commandes vgextend et
lvextend. Rappelons-nous l'ordre dans lequel nous
devons le créer : d'abord le volume physique, puis le groupe de volumes,
et le volume logique en dernier. Cet ordre est très important et il faut
l'inverser pour supprimer ces lecteurs logiques. Ici nous ajoutons le
volume physique /dev/sdb2
à notre groupe de volumes
VolumeGroup_1
:
[root@localhost data]#
vgextend /dev/VolumeGroup_1 /dev/sdb2
Volume group "VolumeGroup_1" successfully extended
[root@localhost data]#
vgdisplay
--- Volume group ---
VG Name VolumeGroup_1
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 952.00 MB
PE Size 4.00 MB
Total PE 238
Alloc PE / Size 100 / 400.00 MB
Free PE / Size 138 / 552.00 MB
VG UUID BCkPP1-2CM1-1hxW-7B2J-yfSt-mEMJ-7fMwNL
C'est bon, nous avons créer des volumes physiques, des groupes de volumes, des volumes logiques et nous les avons redimensionnés. On peut faire beaucoup plus de choses et je vous recommande de pratiquer beaucoup avant de faire quoique ce soit qui impliquerait des données critiques et assurez-vous d'avoir une sauvegarde ou une image de vos données.
Commands: fdisk ----- partitionne le disque dur partprobe - force le noyau à relire la table des partitions pvcreate -- crée des volumes physiques pvdisplay - affiche des détails à propos des volumes physiques vgcreate -- crée des groupes de volumes vgdisplay - affiche des détails à propos des groupes de volumes vgextend -- étend le groupe des volumes lvcreate -- crée des volumes logiques lvdisplay - affiche des détails au sujet des volumes logiques lvextend -- étend des volumes logiques lvresize -- redimentionne des volumes logiques resize2fs - élargit le système de fichiers dans l'espace nouvellement étendu
L'adaptation française de ce document a été réalisée dans le cadre du Projet de traduction de la Gazette Linux.
Vous pourrez lire d'autres articles traduits et en apprendre plus sur ce projet en visitant notre site : http://www.traduc.org/Gazette_Linuxhttp://www.traduc.org/Gazette_Linux
Si vous souhaitez apporter votre contribution, n'hésitez pas à nous rejoindre, nous serons heureux de vous accueillir.