目录
LVM:Logical Volume Manager, Version:2 逻辑卷管理
dm:device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块
/dev/dm-# 真正的设备文件路径
PV:物理卷
PE:物理块,将PV提供的存储空间划分成大小相同的块,加入到VG后才被定义出来
VG:卷组,类似于扩展分区,无法被直接格式化
LV:逻辑卷
LE:逻辑块,PE被分给LV后就叫做LE
优点:可动态扩展分区大小而不必清空原有数据
缺点:一旦数据损坏,修复起来困难
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root
一、pv管理工具
pvs:简要pv信息显示
pvdisplay:显示pv的详细信息
pvcreate /dev/DEVICE:创建pv
P.S. 需将分区调整为8e格式
二、vg管理工具
vgs
vgdisplay
vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
先做pvmove
vgremove
三、lv管理工具
lvs
lvdisplay
lvcreate -L #[mMgGtT] -n NAME VolumeGroup
lvremove /dev/VG_NAME/LV_NAME
扩展逻辑卷
# lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME 增加| 扩展到 物理边界
# resize2fs /dev/VG_NAME/LV_NAME 扩展文件系统逻辑边界
缩减逻辑卷
# umount /dev/VG_NAME/LV_NAME
# e2fsck -f /dev/VG_NAME/LV_NAME 文件系统强制检测和修复
# resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT] 缩减逻辑边界,需指明缩减至多大
# lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME
# mount
快照:snapshot
(时间机器)
lvcreate -L #[mMgGtT] -p r -s -n snapshot_lv_name original_lv_name
练习
练习1:创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
pvcreate /dev/sda[5-8]
vgcreate -s 16M testvg /dev/sda5 /dev/sda7
lvcreate -L 5G -n testlv testvg
mke2fs -t ext3 /dev/testvg/testlv
mkdir /users
mount /dev/testvg/testlv /users
练习2:新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录
练习3:扩展testlv至7G,要求archlinux用户的文件不能丢失
lvextend -L 7G /dev/testvg/testlv
resize2fs /dev/testvg/testlv
练习4:收缩testlv至3G,要求archlinux用户的文件不能丢失
umount /users
e2fsck -f /dev/testvg/testlv
resize2fs /dev/testvg/testlv 3G
lvreduce -L 3G /dev/testvg/testlv
mount /dev/testvg/testlv
练习5:对testlv创建快照,并尝试基于快照备份数据,验正快照的功能
lvcreate -s -p r -L 1.5G -n testsnap /dev/testvg/testlv
mount /dev/testvg/testsnap /snap
回顾
lvm:边界动态扩展或收缩;快照
pv --> vg --> lv
create VG用 -s指明PE大小,可直接指定名字;LV用-L指明大小,需要加-n再指定名字
PE
LE
扩展逻辑卷
# lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME 增加| 扩展到 物理边界
# resize2fs /dev/VG_NAME/LV_NAME 扩展文件系统逻辑边界
缩减逻辑卷
# umount /dev/VG_NAME/LV_NAME
# e2fsck -f /dev/VG_NAME/LV_NAME 文件系统强制检测和修复
# resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT] 缩减逻辑边界,需指明缩减至多大
# lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME
# mount
快照:snapshot
(时间机器)
lvcreate -L #[mMgGtT] -p r -s -n snapshot_lv_name original_lv_name
参考资料:
马哥随堂笔记
注:诚恳欢迎读者对本文提出批评意见,若发现存在错误,我定第一时间修改。如果读者觉得文章对您有帮助,欢迎点赞鼓励一下哟٩(๑❛ᴗ❛๑)۶。