Linux笔记25.LVM逻辑卷管理器
LVM技术产生的背景:企业日益变化的存贮需求 传统的磁盘存储显示不够灵活
磁盘分区存储
/home /var /
100M 200M 5G
100M /dev/sda1 100M /dev/sda2 50M /dev/sda3
PV (physical volume)物理卷
VG (Volume Group)卷组
LV (Logical Volume)逻辑卷
pvcreate /dev/sda1 /dev/sda2 /dev/sda3
100M/dev/sda1 100M/dev/sda2 50M/dev/sda3
vgcreate vg0 /dev/sda1 /dev/sda2
200M 50M
lvcreate –n thizdata -L 10M vg0
vg0:200M
Lv 10M
VG:190M
PV:50M
e2fsadm –L 10M /dev/vg0/thizdata
LV:20M
vgextend vg0 /dev/sda3
vg0:250M
LV:20M
VG:230M
pvmove /dev/sda1 [/dev/sdb1] 将数据移到其它位置
vg0:150M
具体操作步骤:
建好分区或磁盘
将分区id改为linux lvm (8e)
fdisk /dev/sdb 分区sdb1,sdb2,sdb3
分区类型8e(Linux LVM)如果系统在使用sdb,需要重启,以便系统重新读取sdb的分区表信息
用pvcreate 初始化分区
#pvcreate /dev/sdb[1-3] 初始化物理卷
用vgscan扫描物理卷(第一次做LVM的必要步骤)
#vgscan 扫描物理卷,创建卷组数据库,第一次创建lvm 运行此命令
用vgcreate建一个新的卷组
#vgcreate vg0 /dev/sdb1 /dev/sdb2 用sdb1,sdb2创建卷组vg0
使用“vgdisplay 卷组名”可查看卷组
#vgdisplay vg0
使用lvcreate建立逻辑卷
.#lvcreate -n data -L 10M vg0 从vg0中创建一个新的名为data,大小10M的逻辑卷
其它相关命令:
#lvscan :显示有多少逻辑卷可供使用
#vgdisplay:显示卷组信息
#lvdisplay:显示逻辑卷信息
#pvscan :显示磁盘卷
#pvreduce : 移除卷组中已经删除掉的逻辑分区 pvreduce vg0 /dev/sda1
创建LVM逻辑卷管理大容量磁盘
#man pvcreate
修改PE的大小来扩充卷组的容量
#vgcreate –s 16M vg2 /dev/sdd1
lvcreate其它参数:
#lvcreate --help
-s的功能是捕捉快照,它的作用是瞬间捕捉lvm的动作状态,然后备份数据. 在linux中, linux是一个多用户,多任务的网络操作系统, 数据移动量非常的大,如果用传统的cp或其它命令copy数据时,会造成数据的不同步.比如说,你正从home目录中往tmp备份数据,如果先备份tmp然后再备份home时,可能会出现时间差,导致数据无法备份到, 我们在LVM中通常采用快照的方法来备份数据
采用快照备份数据(lvcreate -s)
系统中数据太多时不宜使用快照功能,会拖垮你的机器
用lvcreate –s 创建快照的空间一定要比将要备份的空间要大,否则会发现磁盘溢出现像
创建快照时可加-L 等定义块大小的参数
#lvcreate -s -L 8M/G -n snap /dev/vg0/thiz
注意:快照方式只能用一次,系统重新启动就要失效,另注意,系统的数据不是很多的情况可以使用,如果系统的数据很多会拖慢你的机器
快照卷只保留做快照一刹那时刻的数据,后期变动的数据将无法添加到快照中去.
删除逻辑卷
删除逻辑卷时按LV VG PV的顺序来卸载
#lvremove /dev/vg0/lv1
#vgchange -an vg0 (停止vg0工作状态)
#vgchange -ay vg0 (激活vg0工作状态)
要确认逻辑是激活的,没有挂载的.Vg是不能直接删除的,我们要把vg的激活状态转换成休眠状态,停止vg设备 a表示active(活跃) y表示yes n表示no
#pvreduce : 移除卷组中已经删除掉的逻辑分区 pvreduce vg0 /dev/sda1
LVM实例
#fdisk /dev/hda
Command (m for help): p
Disk /dev/hda: 255 heads, 63 sectors, 623 cylinders
Units = cylinders of 16 |