Linux逻辑卷管理(LVM)操作笔记

来源:互联网 发布:上瘾网络剧新闻发布会 编辑:程序博客网 时间:2024/06/10 08:49

创建pv
pvcreate /dev/sdx1
pvcreate /dev/sdx{1..5}
pvcreate /dev/md0

pv在线数据迁移
通过pvmove可以将一个PV上的数据迁移到新的PV上,也可以将PV上的某个LV迁移到另一个PV上。
#lvs -o +devices
  LV       VG         Attr   LSize  Origin Snap%  Move Log Copy%  Devices      
  LogVol00 VolGroup00 -wi-ao  2.88G                               /dev/sda2(0) 
  LogVol01 VolGroup00 -wi-ao  1.00G                               /dev/sda2(92)
  test     lvm_test   -wi-ao 52.00M                               /dev/sdb1(0) 

#pvmove -n test /dev/sdb1 /dev/sdc1

#lvs -o +devices
  LV       VG         Attr   LSize  Origin Snap%  Move Log Copy%  Devices      
  LogVol00 VolGroup00 -wi-ao  2.88G                               /dev/sda2(0) 
  LogVol01 VolGroup00 -wi-ao  1.00G                               /dev/sda2(92)
  test     lvm_test   -wi-ao 52.00M                               /dev/sdc1(0) 


创建vg
vgcreate /dev/sdx1
vgcreate /dev/sdx{1..5}
vgcreate /dev/md0

向vg中添加pv
vgextend oravg /dev/sdcX

向vg中移除pv
vgreduce oravg /dev/sdcX

激活/非激活vg

vgchange -a y oravg

vgchange -a n oravg

合并vg

vgmerge oravg1 oravg2 (要求处于非激活状态)

拆分vg

vgsplit vg1 vg2 /dev/sda2 /dev/sda3 (/dev/sda2 /dev/sda3属于vg2)

删除vg

vgremove vg1 (要求处于非激活状态)

重命名vg

vgrename vg1 vg2 (把vg1重命名成vg2)

检查vg

vgck

备份系统vg中的vgda信息

vgcfgbackup

命令vgcfgbackup用于备份系统所有vg中各物理卷的vgda信息到/etc/lvmconf

恢复系统vg中的vgda信息

vgcfgrestore

命令vgcfgrestore用户从/etc/lvmconf恢复系统所有vg中各物理卷的vgda信息,要求vg处于非激活状态

重建已有卷组的卷组目录和其中设备文件

vgmknodes

在恢复vgda信息后,应该使用命令vgmknodes重建节点信息,重建已有卷组的卷组目录和其中的设备文件

输出卷组

vgexport vg1(非激活状态)

输入卷组

vgimport vg1 /dev/sda1

查看vg、pv、lv

vgdisplay,vgscan,vgs

pvdisplay,pvscan,pvs

lvdisplay,lvscan,lvs

扫描块设备


通过lvmdiskscan可以看到那些设备成为了物理卷.
#lvmdiskscan

创建lv

创建普通lv

lvcreate -n lv1 -L 500M vg1

创建条块化的lv
# lvcreate -L 500M -i2 -n test lvm_test
Using default stripesize 64.00 KB
Rounding size (125 extents) up to stripe boundary size (126 extents)
Logical volume "test" created
-i2指此逻辑卷在两个物理卷中条块化存放数据,默认一块大小为64KB.

创建镜像的lv
#lvcreate -L 52M -m1 -n test lvm_test /dev/sdb1 /dev/sdc1 /dev/sdb2
Logical volume "test" created
-m1表示只生成一个单一镜像,镜像分别放在/dev/sdb1和/dev/sdc1上,镜像日志放在/dev/sdb2上.

创建快照lv
#lvcreate --size 10 --snapshot --name snaptest /dev/lvm_test/test

扩容lv

lvextend -L +100M /dev/vg1/lv1

lvextend -L 1000M /dev/vg1/lv1 (1000M为扩展后大小)

缩减lv

lvreduce -L -100M /dev/vg1/lv1

lvreduce -L 1000M /dev/vg1/lv1 (1000M为缩小后大小)

重命名lv

lvrename /dev/vg1/lv1 /dev/vg1/lv001 或 lvrename vg1 lv1 lv001

激活/非激活lv

lvchange -a y /dev/vg1/lv1

lvchange -a n /dev/vg1/lv1

改变lv读写状态

lvchange -p r /dev/vg1/lv1

删除lv

lvremove /dev/vg1/lv1

创建文件系统

mkfs -t ext3 /dev/vg1/lv1
mkfs.ext3 /dev/vg1/lv1
mkfs.jfs2 /dev/vg1/lv1
mkreiserfs /dev/vg1/lv1

改变文件系统大小

resize2fs /dev/vg0/lv0 (先改变lv大小,一般建议最好将文件系统卸载,调整大小,然后再加载)

原创粉丝点击