linux LVM详解
1.创建及删除步骤
1)创建:linux partition–>pv–>vg–>lv–>fs–>mount
2)删除:umount–>lv–>vg–>pv–>linux partition
2.linux partition
linux中,我们常用fdisk对磁盘分区。但对于2T以上的磁盘,得用parted命令分区。
1)GPT磁盘和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)创建PV(pvcreate)
[root]# pvcreate /dev/sda3
2)查看PV(pvs或pvscan)
[root]# pvs
[root]# pvscan
3)查看PV详细信息(pvdiskplay)
[root]# pvdisplay /dev/sda3
4)删除PV(pvremove)
[root]# pvremove /dev/sda3
4.VG管理
1) 创建VG(vgcreate)
语法:vgcreate [-s <8M|16M|…>] vg0 /dev/sdb{1,2,3…}
–其中:
-s:指定扩展块(PE)的大小,默认为4MB;可以是8M,16M,32M,64M,…,16G,但一个LV最多可以有65532个扩展块。
vg0:新创建的VG名字。
/dev/sdb{1,2,3…}:可写多个PV,PV间以空格分隔;
[root]# vgcreate -s 16M testvg /dev/sda3
2)查看VG(vgs或vgscan)
[root]# vgs
[root]# vgscan
3)查看VG详细信息(vgdisplay)
[root]# vgdisplay testvg
4)vg扩展(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 (117190656-209715199, default 117190656):
Using default value 117190656
Last sector, +sectors or +size{K,M,G} (117190656-209715199, 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
5)vg缩小
[root]# vgreduce testvg /dev/sda5
6)vg删除
[root]# vgremove testvg
5 LV的管理
1)LV的创建(lvcreate)
语法1:lvcreate -L 512M -n data testvg -L 512M
–其中
设置LV的大小为512M。
-n data:设置LV的名字为data。
[root]# lvcreate -L 510M -n date testvg
语法2:lvcreate -l 32 -n data testvg -l 32
–其中
生成的LV使用32个扩展块,LV大小=32*PE(默认4M)则为128M。
-n data:LV的名字。vg0 :设置是有那个VG生成的LV。
vg0 :设置是有那个VG生成的LV。
[root]# lvcreate -l 10 -n data testvg
2) 查看LV(lvs或者lvscan)
[root]# lvs
3)查看LV详细信息(lvdisplay)
[root]# lvdisplay testvg
4)格式化LV(mkfs.ext3)
[root]# mkfs.ext3 /dev/testvg/data
5)增大LV(lvextend)
[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)删除LV(lvremove/vg/lv)
[root]# lvremove /dev/testvg/date
6)挂载文件系统
[root]# mkfs.ext3 /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