Linux LVM硬盘管理和相关操作
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,以下操作是分以下方面:
a.创建lvm
b.删除lvm
c.拉伸一个逻辑卷
d.拉伸一个卷组
e.缩小一个逻辑卷
f.缩小卷组
一、创建lvm
1.将物理磁盘识别初始化为物理卷[[email protected] ~]# pvcreate /dev/sdb /dev/sdc
Physical volume "/dev/sdb" successfully created
Physical volume "/dev/sdc" successfully created
2.创建卷组,并将pv加入到卷组中
[[email protected] ~]# vgcreate milk /dev/sdb /dev/sdc
Volume group "milk" successfully created
3.基于卷组创建逻辑卷
[[email protected] ~]# lvcreate -n mylv -L 2G milk
Logical volume "mylv" created
4.为创建好的逻辑卷格式化成文件系统
[[email protected] ~]# mkfs.ext4 /dev/milk/mylv
5.将格式化好的逻辑卷挂载使用
[[email protected] ~]# mkdir /milkcs
[[email protected] ~]# mount /dev/milk/mylv /milkcs/
6.查看挂载情况
二、删除lvm
(以下操作一定要按顺序)
1.取消挂载
[[email protected] ~]# umount /dev/milk/mylv
2.删除LV
[[email protected] ~]# lvremove /dev/milk/mylv
Do you really want to remove active logical volume mylv? [y/n]: y
Logical volume "mylv" successfully removed
3.删除VG
[[email protected] ~]# vgremove milk
Volume group "milk" successfully removed
4.删除物理卷
[[email protected] ~]# pvremove /dev/sdb /dev/sdc
Labels on physical volume "/dev/sdb" successfully wiped
Labels on physical volume "/dev/sdc" successfully wiped
三、拉伸一个逻辑卷
(可以在线操作,不需要卸载,动态扩充)
1.保证vg有足够的空闲空间
[[email protected] ~]# vgdisplay milk
--- Volume group ---
VG Name milk
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 2
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 11.99 GiB
PE Size 4.00 MiB
Total PE 3070
Alloc PE / Size 512 / 2.00 GiB
Free PE / Size 2558 / 9.99 GiB
VG UUID Ign6Bc-hMhZ-QL25-Y12w-3Z4Z-aqV5-eGuv3v
2.扩充逻辑卷
[[email protected] ~]# lvextend -L +3G /dev/milk/mylv
Extending logical volume mylv to 5.00 GiB
Logical volume mylv successfully resized
3.查看扩充后LV大小
[[email protected] ~]# lvdisplay /dev/milk/mylv
4.更新文件系统
[[email protected] ~]# df -h --没更新之前
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_milk11g-lv_root 32G 5.7G 25G 19% /
tmpfs 1.6G 72K 1.6G 1% /dev/shm
/dev/sda1 485M 39M 421M 9% /boot
/dev/mapper/milk-mylv 2.0G 67M 1.9G 4% /milkcs
[[email protected] ~]# resize2fs /dev/milk/mylv
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/milk/mylv is mounted on /milkcs; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/milk/mylv to 1310720 (4k) blocks.
The filesystem on /dev/milk/mylv is now 1310720 blocks long.
5.查看更新后文件系统
df -h
四、拉伸一个卷组
(就是想卷组中添加一个新盘)
1.将要添加到vg的硬盘格式化为PV
[[email protected] ~]# pvcreate /dev/sdd
2.将新的pv添加到指定的卷组中
[[email protected] ~]# vgextend milk /dev/sdd
3.查看扩充后的vg大小
[[email protected] ~]# vgdisplay
五、缩小一个逻辑卷
(逻辑卷的缩小操作必须离线操作,要卸载逻辑卷)
1.现在已经挂载的逻辑卷
[[email protected] ~]# umount /dev/milk/mylv
2.缩小文件系统(会提示运行fsck检查文件系统)
[[email protected] ~]# resize2fs /dev/milk/mylv 3G
resize2fs 1.41.12 (17-May-2010)
Please run 'e2fsck -f /dev/milk/mylv' first.
[[email protected] ~]# e2fsck -f /dev/milk/mylv
3.缩小LV(最好留有一定的矿量,比如写 2.9G)
[[email protected] ~]# lvreduce -L 2.9G /dev/milk/mylv
4.挂载
mount /dev/milk/mylv /mnt
5.查看更新后文件系统
df -h
六、缩小卷组
(保证vg空闲的大小一定大于移除的物理卷大小)
1.将一个PV制定的卷组中移除
[[email protected] ~]# vgreduce /milk /dev/sdd
2.查看缩小后的卷组大小
[[email protected] ~]# vgdisplay
3.再将pv移除,就可以另做他用
[[email protected] ~]# pvremove /dev/sdd