当前位置: 首页 > Linux, lvm > 正文

lvm 实践笔记

物理卷

创建物理卷

# pvcreate /dev/sdd /dev/sde /dev/sdf

察看已经存在的物理卷信息

# pvs				--每行一条,便于脚本调用
# pvdisplay			--显示pv的详细信息

阻止在物理卷上分配空间 (比如,某个物理磁盘发生了硬件故障,需要移除这个硬盘的时候)

# pvchange -x n /dev/sdk1

重新允许在物理卷上分配空间

# pvchange -x y /dev/sdk1

移除物理卷(前提,没有卷组使用该pv)

# pvremove /dev/ram15
  Labels on physical volume "/dev/ram15" successfully wiped

替换/移除物理卷

# pvmove /dev/sdc1 SourcePhysicalVolume     --从SourcePhysicalVolume中移除sdc1

只移除 sdc1 中 MyLV 逻辑卷上的的数据

# pvmove -n MyLV /dev/sdc1

卷组

创建卷组

# vgcreate vg1 /dev/sdd1 /dev/sde1

给卷组中加入新的物理卷

# vgextend vg1 /dev/sdf1

察看已经存在的卷组信息

# vgs		--每行一条,便于脚本调用
# vgdisplay	--现实vg卷组的详细信息
# vgscan	--重建 /etc/lvm/cache/.cache file cache文件,维护目前的 LVM 设备列表

系统启动时,会自动运行vgscan命令。如果集群中在一个节点进行了 vgextend 等命令,在其他节点手动运行 vgscan 将是很好的选择

移动物理卷上的数据(适用于替换硬盘时)

# vgreduce my_volume_group /dev/hda1

该命令会将 /dev/hda1 上的数据挪到同卷组内的其他物理卷上

限制卷组中最大的逻辑卷数量

# vgchange -l 128 /dev/vg00

将卷组改成闲置状态(维护时使用)

# vgchange -a n my_volume_group

重新激活卷组

# vgchange -a y my_volume_group

移除卷组(要保证移除的卷组上的逻辑卷都已经移除了)

# vgremove officevg
  Volume group "officevg" successfully removed

卷组拆分(将/dev/ram15 从 bigvg 中拆出来组成名为 smallvg 的卷组)

# vgsplit bigvg smallvg /dev/ram15
  Volume group "smallvg" successfully split from "bigvg"

卷组合并(前提条件:两个卷组的 extent sizes 必须相同)

# vgmerge -v databases my_vg

将 my_vg 合并到 database卷组, -v表示显示详细信息,其中 my_vg 必须处于 inactive 状态, database可以处于active或者inactive状态

卷组改名

# vgrename /dev/vg02 /dev/my_volume_group

逻辑卷

创建逻辑卷

# lvcreate -L1500 -n testlv testvg   		--1500M 默认单位M
# lvcreate -l 60%VG -n mylv testvg   		--使用卷组的60%
# lvcreate -l 100%FREE -n yourlv testvg 	--使用testvg的全部剩余空间

创建条带化的逻辑卷

# lvcreate -L 50G -i2 -I64 -n gfslv vg0		-i表示设备的数量, -I表示条带的大小(KB)

制定条带化时的详细信息

# lvcreate -l 100 -i2 -nstripelv testvg /dev/sda1:0-49 /dev/sdb1:50-99
  Using default stripesize 64.00 KB
  Logical volume "stripelv" created

表示大小为 100个PE, 其中,使用 sda1 的0-49和 sda2 的 50-99

创建镜像化的逻辑卷

# lvcreate -L 50G -m1 -n mirrorlv vg0		-- -m表示镜像(复制)的数量

镜像逻辑卷按照extend来拷贝,默认是512KB,可以使用 -R num M 的方式进行调整

注意:超过1.5T的就不能使用 512K了

拇指定律: 使用2的指数, 3-4T:4M, 5-8T: 8M

使用快照

# lvcreate --size 100M --snapshot --name snap /dev/vg00/lvol1

为 /dev/vg00/lvol1 创建名为 snap 的快照,可以用于备份

使用merge操作

# lvconvert --merge vg00/lvol1_snap

将 lvol1_snap merge回源逻辑卷,回复备份时可以考虑此操作

收缩逻辑卷

# lvreduce -l -3 vg00/lvol1

将逻辑卷减少3个PE

修改逻辑卷的权限

# lvchange -pr vg00/lvol1      --将逻辑卷改为只读模式
# lvchange -prw vg00/lvol1     --将逻辑卷修改为读写模式

逻辑卷改名

# lvrename /dev/vg02/lvold /dev/vg02/lvnew

删除逻辑卷

# lvremove /dev/vg02/lvol1

增大逻辑卷

增大到 12G

# lvextend -L12G /dev/myvg/homevol
lvextend -- extending logical volume "/dev/myvg/homevol" to 12 GB
lvextend -- doing automatic backup of volume group "myvg"
lvextend -- logical volume "/dev/myvg/homevol" successfully extended

增大1G

# lvextend -L+1G /dev/myvg/homevol
lvextend -- extending logical volume "/dev/myvg/homevol" to 13 GB
lvextend -- doing automatic backup of volume group "myvg"
lvextend -- logical volume "/dev/myvg/homevol" successfully extended

将卷组中所有的空闲附加到已经存在的逻辑卷

lvextend -l +100%FREE /dev/myvg/testlv
  Extending logical volume testlv to 68.59 GB
  Logical volume testlv successfully resized

收缩逻辑卷

# lvreduce -l -3 vg00/lvol1

收缩3个PE,在收缩卷之前要保证先将里边的文件系统进行收缩,不然会丢失数据

如果数据量较大,需要使用-n参数后台进行,下面的命令表示将 sdc1 上的数据移动到 sdf1

# pvmove -b /dev/sdc1 /dev/sdf1

综合操作实例(跨系统的卷组迁移)

1. 卸载卷组上的所有逻辑卷

umount 

2. 将卷组改成闲置状态

vgchange -a n olumeGroupName

3. 导出VolumeGroupName的信息

vgexport VolumeGroupName

4. 做一次重建cache扫描

vgscan

5. 察看所有相关物理卷的状态,一定要处于export状态

pvscan
    PV /dev/sda1
    is in exported VG myvg [17.15 GB / 7.15 GB free]
    PV /dev/sdc1
    is in exported VG myvg [17.15 GB / 15.15 GB free]
    PV /dev/sdd1
    is in exported VG myvg [17.15 GB / 15.15 GB free]
    ...

6. 拔下硬盘装到新的机器

7. 导入VolumeGroupName的信息

vgimport VolumeGroupName

8. 激活卷组

vgchange -a y VolumeGroupName

9. 重新挂在相关逻辑卷

mount

That’s all

    分享到:

本文固定链接: http://klwang.info/about-lvm-skills/ | 数据库|Linux|软件开发

该日志由 klwang 于2013年06月12日发表在 Linux, lvm 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: lvm 实践笔记 | 数据库|Linux|软件开发
关键字: , , ,

lvm 实践笔记:等您坐沙发呢!

发表评论

*
快捷键:Ctrl+Enter