2023年11月25日发(作者:)

linuxLVM详解

1.创建及删除步骤

1)创建:linux partition-->pv-->vg-->lv-->fs-->mount

2)删除:umount-->lv-->vg-->pv-->linux partition

partition

linux中,我们常⽤fdisk对磁盘分区。但对于2T以上的磁盘,得⽤parted命令分区。

1GPT磁盘和MBR磁盘

使⽤GUID分区表的磁盘通常称为GPT磁盘,不像原来MBR磁盘,GPT磁盘没有四个主分区的限制,可以设置多达128个分区,通常⽤parted

命令来对GPT磁盘进⾏分区。

2)操作

--查看磁盘分区

[root]# fdisk -l

--sda进⾏分区

[root]# parted /dev/sda

--重新扫描分区

[root]# partprobe

--查看分区后

[root]# fdisk -l

3 PV管理

1)创建PVpvcreate

[root]# pvcreate /dev/sda3

2)查看PVpvspvscan

[root]# pvs

[root]# pvscan

3)查看PV详细信息(pvdiskplay

[root]# pvdisplay /dev/sda3

4)删除PVpvremove

[root]# pvremove /dev/sda3

管理

1) 创建VGvgcreate

语法:vgcreate [-s <8M|16M|...>] vg0 /dev/sdb{1,}

--其中:

-s:指定扩展块(PE)的⼤⼩,默认为4MB;可以是8M16M32M64M...16G,但⼀个LV最多可以有65532个扩展块。

vg0:新创建的VG名字。

/dev/sdb{1,}:可写多个PVPV间以空格分隔;

[root]# vgcreate -s 16M testvg /dev/sda3

2)查看VGvgsvgscan

[root]# vgs

[root]# vgscan

3)查看VG详细信息(vgdisplay

[root]# vgdisplay testvg

4vg扩展(vgextend

--fdisk划新partition

[root]# fdisk /dev/sda

Command (m for help): n

Select (default e): e

Selected partition 4

First sector (117187501-209715199, default 117188608):

Last sector, +sectors or +size{K,M,G} (117188608-209715199, default 209715199):

Command (m for help): p

Command (m for help): n

All primary partitions are in use

Adding logical partition 5

First sector (117199, default 117190656):

Using default value 117190656

Last sector, +sectors or +size{K,M,G} (117199, default 209715199): +20G

--改分区类型为lvm

Command (m for help): t

Partition number (1-5, default 5):

Hex code (type L to list all codes): 8e

Command (m for help): w

--再次查看partition

[root]# fdisk -l

--通知系统核⼼分区改变

[root]# partprobe

--创建PV

[root]# pvcreate /dev/sda5

--扩展vg

[root]# vgextend testvg /dev/sda5

5vg缩⼩

[root]# vgreduce testvg /dev/sda5

6vg删除

[root]# vgremove testvg

5 LV的管理

1LV的创建(lvcreate

语法1lvcreate -L 512M -n data testvg -L 512M

--其中

设置LV的⼤⼩为512M

-n data:设置LV的名字为data

[root]# lvcreate -L 510M -n date testvg

语法2lvcreate -l 32 -n data testvg -l 32

--其中

⽣成的LV使⽤32个扩展块,LV⼤⼩=32*PE(默认4M)则为128M

-n dataLV的名字。vg0 :设置是有那个VG⽣成的LV

vg0 :设置是有那个VG⽣成的LV

[root]# lvcreate -l 10 -n data testvg

2) 查看LVlvs或者lvscan

[root]# lvs

3)查看LV详细信息(lvdisplay

[root]# lvdisplay testvg

4)格式化LV3

[root]# 3 /dev/testvg/data

5)增⼤LVlvextend

[root]#lvextend -L +160M /dev/testvg/data

--其中

为使其⽴即⽣效需⽤resize2fs

[root]#resize2fs /dev/testvg/data

6)减少LV⼤⼩(lvreduce

[root]# lvreduce -L 160M /dev/testvg/data

[root]# resize2fs /dev/testvg/data

7)删除LVlvremove/vg/lv)

[root]# lvremove /dev/testvg/date

6)挂载⽂件系统

[root]# 3 /dev/testvg/data

[root]# mkdir /data

[root]# mount /dev/testvg/data /data

7 lvm快照

1)创建snapshot

语法:lvcreate -l 64 -s -n databackup /dev/testvg/data

--其中

-l 64:指定快照64个扩展块。

总容量=64*单扩展块⼤⼩

-n databackup:⽣成的快照的名字。

/dev/testvg/data:源LV名字。

[root]# lvcreate -L 160M -s -n databackup /dev/testvg/data

2)查看LVM快照(lvscan

[root]# lvscan

3)查看快照详细信息(lvdisplay

[root]# lvdisplay /dev/testvg/data

4)快照的删除(lvremove

[root]# lvremove /dev/testvg/databackup