Maison > Article > Opération et maintenance > Explication détaillée d'exemples de gestion de volumes logiques LVM
Gestion du volume logique LVM
Créer un volume logique
1 Préparer la partition ou le disque dur
Ici, nous utilisons deux disques durs /dev/sdb et /dev/sdc et deux partitions /dev/sda9 et /dev/sda10, tous deux en taille, c'est 1G et le disque est limité, donc je ne veux pas être aussi pointilleux.
Ajouter des partitions /dev/sda9, /dev/sda10
[root@centos7 ~]# fdisk /dev/sda 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): n All primary partitions are in use Adding logical partition 9 First sector (31885312-41943039, default 31885312): Using default value 31885312 Last sector, +sectors or +size{K,M,G} (31885312-41943039, default 41943039): +1G Partition 9 of type Linux and of size 1 GiB is set
Notez que vous devez changer le type de partition en Linux LVM
Command (m for help): t Partition number (1-9, default 9): 8e Partition number (1-9, default 9): 9 Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' Command (m for help):
Créez /dev/sda10 de la même manière.
[root@centos7 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda9 8:9 0 1G 0 part └─sda10 8:10 0 1G 0 part sdb 8:16 0 1G 0 disk sdc 8:32 0 1G 0 disk
2 Créer un PV (volume physique)
Le format de commande est : pvcreate DEVICE, qui peut être créé en même temps. Un ou plusieurs appareils peuvent être créés en même temps.
Afficher les commandes du volume physique : pvdisplay (afficher des informations détaillées), pvs (afficher des informations simples)
[root@centos7 ~]# pvcreate /dev/sda9 Physical volume "/dev/sda9" successfully created. [root@centos7 ~]# pvcreate /dev/sda10 /dev/sdb /dev/sdc Physical volume "/dev/sda10" successfully created. Physical volume "/dev/sdb" successfully created. Physical volume "/dev/sdc" successfully created.
Afficher le volume physique et voir s'il a été exécuté avec succès créé.
[root@centos7 ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda10 lvm2 --- 1.00g 1.00g /dev/sda9 lvm2 --- 1.00g 1.00g /dev/sdb lvm2 --- 1.00g 1.00g /dev/sdc lvm2 --- 1.00g 1.00g
3 Créer un groupe de volumes (VG)
Le format de la commande est : vgcreate -s PE VGNAME ( nom vg) DEVICE (nom de l'appareil)
-s : spécifiez la taille du bloc d'extension physique, qui est la taille du PE
Afficher les commandes : vgs, vgdisplay
[root@centos7 ~]# vgcreate -s 16M vg0 /dev/sda9 /dev/sda10 /dev/sdb /dev/sdc Volume group "vg0" successfully created
Vérifiez-le
[root@centos7 ~]# vgs VG #PV #LV #SN Attr VSize VFree vg0 4 0 0 wz--n- 3.94g 3.94g
Regardez les informations détaillées
[root@centos7 ~]# vgdisplay --- Volume group --- VG Name vg0 System ID Format lvm2 Metadata Areas 4 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 4 Act PV 4 VG Size 3.94 GiB PE Size 16.00 MiB Total PE 252 Alloc PE / Size 0 / 0 Free PE / Size 252 / 3.94 GiB VG UUID qmoIMg-5wQR-GKCS-dpq9-HLrt-zVIi-JBC9ZX
Tout est comme attendu, la taille est d'environ 4G, ce qui correspond exactement à la somme de deux partitions et de deux disques durs.
4 Créer un volume logique (LV)
Le format de la commande est : lvcreate -n LVNAME (préciser le nom du LV) -L SIZE ( spécifiez la taille LV) vg0 (VG à utiliser)
-l spécifie la taille PE
Commande d'affichage (similaire à PV, VG) : lvs, lvdisplay
[root@centos7 ~]# lvcreate -n lv0 -L 3G vg0 Logical volume "lv0" created.
Créé avec succès, cochez
[root@centos7 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lv0 vg0 -wi-a----- 3.00g
puis vérifiez les détails
[root@centos7 ~]# lvdisplay --- Logical volume --- LV Path /dev/vg0/lv0 LV Name lv0 VG Name vg0 LV UUID 622i7m-uy6s-3nZI-8xSb-sxrR-cZzz-C9pwkd LV Write Access read/write LV Creation host, time centos7.3.loacl, 2017-04-25 16:25:13 +0800 LV Status available # open 0 LV Size 3.00 GiB Current LE 192 Segments 4 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0
Vous pouvez confirmer qu'il a été créé avec succès.
Vous pouvez désormais utiliser /dev/vg0/lv0 comme disque dur.
Regardez maintenant les informations du disque, elles ont changé.
[root@centos7 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT fd0 2:0 1 4K 0 disk sda 8:0 0 20G 0 disk ├─sda9 8:9 0 1G 0 part │ └─vg0-lv0 253:0 0 3G 0 lvm └─sda10 8:10 0 1G 0 part └─vg0-lv0 253:0 0 3G 0 lvm sdb 8:16 0 1G 0 disk └─vg0-lv0 253:0 0 3G 0 lvm sdc 8:32 0 1G 0 disk └─vg0-lv0 253:0 0 3G 0 lvm
Vous pouvez voir que la partition et le disque dur ajoutés appartiennent déjà à vg0-lv0.
5 Créer un système de fichiers, formater
mkfs.ext4 /dev/vg0/lv0 [root@centos7 ~]# mkfs.ext4 /dev/vg0/lv0
6 Monter et utiliser
[root@centos7 ~]# mkdir /mnt/lv0 [root@centos7 ~]# mount /dev/vg0/lv0 /mnt/lv0
Deuxième extension LV
Format de la commande Développer :
lvextend -L 100G /dev/vg0/lv0 lvextend -l +100G /dev/vg0/lv0 lvextend -l +100%FREE /dev/vg0/lv0
Remarque – L est la quantité à développer, -l est la quantité à développer (augmenter), +100 % GRATUIT consiste à développer 100 du vg %, qui peut être sélectionné en fonction des circonstances personnelles.
Puisque vg0 réserve encore près de 1G d'espace, développez maintenant lv0
1 Vérifions d'abord le LV d'origine
[root@centos7 ~]# vgs VG #PV #LV #SN Attr VSize VFree vg0 4 1 0 wz--n- 3.94g 960.00m
2 LV étendu
[root@centos7 ~]# lvextend -r -l +100%FREE /dev/vg0/lv0
-r est resizefs C'est très pratique de le faire en un seul. étape
Ou soyez plus gênant et procédez étape par étape
[root@centos7 ~]# lvextend -l +100%FREE /dev/vg0/lv0 Size of logical volume vg0/lv0 changed from 3.00 GiB (192 extents) to 3.94 GiB (252 extents). Logical volume vg0/lv0 successfully resized.
3 Ensuite, redéfinissez la taille du système de fichiers
Redéfinition du système de fichiers de la série ext : resize2fs /dev/vg0/lv0
Redéfinition du système de fichiers de la série xfs : xfs_growfs /dev/vg0/lv0
[root@centos7 ~]# resize2fs /dev/vg0/lv0 resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/vg0/lv0 is mounted on /mnt/lv0; on-line resizing required old_desc_blocks = 1, new_desc_blocks = 1 The filesystem on /dev/vg0/lv0 is now 1032192 blocks long.
4 Vérifier l'achèvement du système de fichiers (facultatif)
[root@centos7 ~]# fsck.ext4 /dev/vg0/lv0 e2fsck 1.42.9 (28-Dec-2013) /dev/vg0/lv0: clean, 20/262144 files, 35918/1032192 blocks
5 Confirmer la taille du volume logique
[root@centos7 ~]# df -h /dev/vg0/lv0 Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg0-lv0 3.9G 12M 3.6G 1% /mnt/lv0
De toute évidence, l'expansion a été réussie.
6 Montage en utilisant Réduire LV
[root@centos7 ~]# mount -o remount /dev/vg0/lv0
Bien que les données ne soient généralement pas perdues, afin d'être prudent. Il vaut mieux sauvegarder d'abord.
Regardez les données existantes dans le répertoire /mnt/lv02 Désinstallez /dev/vg0/lv0
[root@centos7 ~]# ls /mnt/lv0/ lost+found myfile2 myfile4 myfile6 myfile8 myfile1 myfile3 myfile5 myfile7 myfile9 [root@centos7 ~]# mkdir /backup [root@centos7 ~]# cp -a /mnt/lv0/* /backup/
3 Vérifier le système de fichiers e2fsck -f /dev/vg0/lv0 dans La complétion du disque doit être vérifiée avant de redimensionner le système de fichiers
[root@centos7 ~]# umount /mnt/lv0/
4下来重定义文件系统大小
resize2fs /dev/vg0/lv0 2G #2G位缩减后的LV 大小。
[root@centos7 ~]# resize2fs /dev/vg0/lv0 2G resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/vg0/lv0 to 524288 (4k) blocks. The filesystem on /dev/vg0/lv0 is now 524288 blocks long.
5 缩减LV
lvreduce -L 2G /dev/vg0/lv0 #缩减到2G
[root@centos7 ~]# lvreduce -L 2G /dev/vg0/lv0 WARNING: Reducing active logical volume to 2.00 GiB. THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce vg0/lv0? [y/n]: y Size of logical volume vg0/lv0 changed from 3.94 GiB (252 extents) to 2.00 GiB (128 extents). Logical volume vg0/lv0 successfully resized.
6 挂载使用
mount /dev/vg0/lv0 /mnt/lv0 [root@centos7 ~]# mount /dev/vg0/lv0 /mnt/lv0/
查看磁盘挂载情况
[root@centos7 ~]# df -h /dev/vg0/lv0 Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg0-lv0 2.0G 9.0M 1.8G 1% /mnt/lv0
7 确认数据是否丢失
现在再来开心目录/mnt/lv0 的内容
[root@centos7 ~]# ls /mnt/lv0/ lost+found myfile2 myfile4 myfile6 myfile8 myfile1 myfile3 myfile5 myfile7 myfile9
很完美,数据并没有丢失!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!