Linux LVM

Linux 的lvm 是一种抽象层次比较高的文件系统,可以由多个磁盘共同构成一个大的逻辑盘符,拥有弹性容量的特点,个人感觉这个课已跟服务器的均衡负载挂上钩,由于其弹性的容量最高可以达到1PB的单个盘符容量(ext4的最大卷容量为1EB,单个文件最大容量16TB,相比较于windows 的NTFS文件系统最大卷静态2T,动态16T,单文件2T),具有不错的动态扩展性能。

首先由磁盘构成PV(physical volume)
再由PV构成VG(volume group)
最后由VG划分多个LV(logic volume)

如图(百度借的图)

这里写图片描述

按照我的理解,他把硬盘的容量抽象化,将物理分区的容量打碎为容量单元即PE(physical extend) 然后再由这些PE组成卷组构成逻辑卷

首先用空闲的卷制作PV(其实就是个简单的标记,不对卷做什么改变)
Pvcreate /dev/sdb1 (如果有多个卷制作pv 依次制作就行,不考虑顺序)
制作的PV 可以用PVdisplay查看

这里写图片描述

然后使用vgcreate 制作vg

Vgcreate vg /dev/sdb{1,2,3,4}

其中vg指创建的vg名称 后面的参数是pv
依然可以用vgdisplay 查看
这里写图片描述
再然后使用lvcreate 创建lv

Lvcreate  -l  1020  –n  VG_LV  vg  

其中-l 使用多少PE 也可以使用-L 指定使用大小 -n 制作lv的名称 后面的vg是指定使用哪个VG

依然还是有lvdisplay可用于查看这里写图片描述
最后就可以正常使用fdisk 制作分区 mkfs格式化 mount挂载然后使用了。

关于lv的扩大与缩小:
扩大lvm的顺序是 制作pv 加入vg 然后改变lv大小 最后改变fs大小

首先用umount 卸载掉已挂载的lv卷(切记不要在挂载的盘符内使用umount,否则怎么卸载怎么失败,吃了半个小时的亏就是卸载不掉)
然后 使用
lvchange –an /dev/vg/vg_lv 停用lv
使用

lvresize  -l +500m  vg  /dev/vg/vg_lv  

-l 可以使用-L替换后面接容量 亮点可以使用 + - 直接指定增加减小的容量或PE个数下一个参数VG 是指定从哪个vg中增加或减少容量 最后的参数是指定哪个lv执行的结果可以由lvdisplay 查看。
最后在不重新格式化lvm的前提下使用resize2fs 指定改变的大小。

Resize2fs  /dev/vg/vg_lV  500m

此处也可以使用mkfs从新格式化lv 我没试 理论应该好用。
对了,还得用
lvchange –ay /dev/vg/vg_lv
启用lvm再然后就可以mount继续使用了。
缩小lv其实跟扩大区别不大
首先还是umount卸载 resize2fs 改变lv卷大小 lvchange 停用 lvresize 改变lv大小

Umount  /mnt/
Resize2fs  /dev/vg/vg_lv 1000m

容量可以使用G,M,K

其实这个resize2fs 跟windows下的分区助手 diskgenus 等分区软件的无损分区很像

Lvchange –an /dev/vg/vg_lv
Lvresize –L -100M vg /dev/vg/vg_lv

然后将pV从vg中移除

Vgreduce  vg /dev/sdb4

将pv标记移除

Pvremove  /dev/sdb4

启用lv

Lvchange –ay /dev/vg/vg_lv

再mount 就可以继续使用缩小后的lv了

建立快照 其实就是一个备份 不过有一些限制,好在生成快照的速度要快好多,不论多大的lv快照就是秒秒钟建立完成,具体我没试验过,不过按照快照的原理确实如此。
建立pV 使用物理容量
然后使用VGextend 使新加入的pv 加入 vg中

Vgextend  vg  /dev/sdb4

制作lv的快照实际上是新建立了一个lv 只不过他是对指定lv的一个映射。

Lvcreate  -l  195  –s  -n  vg_snap  /dev/vg/vg_lv

其中-l 指定大小 –s 制作snapshot -n 后面接名字 最后参数指定被快照的lv
制作的快照不用mkfs就可以直接挂载使用 。其大小于原lv一模一样,可以使用lvdisplay查看。这个快照有容量的限制也可由上面的命令中看到。
快照的好处就是 可以任意祸害快照,然后重新生成快照,其与备份还原的区别个人认为就是备份还原慢 这个快照生成的速度快的让人惊讶,仅此而已。

其实有很多东西在第一遍看的时候你再看第二遍会有不少的新理解,再第一遍看鸟哥基础篇确实这地方根本就看不懂就跳过去了,看完一遍回来看的时候发现这个东西其实也没有那么难,就是抽象的层次高了一些而已。
对于抽象,抽象的层次越高则其对具体硬件的依赖越少,不过其复杂性也随之增高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值