Linux-LVM

##########################################
AUTHOR:          Honway.Liu
DATE:                 2012-03-01
##########################################
提纲 :
LVM 简介
LVM 组成及原理
LVM 快照
LVM 的创建和使用
快照的创建和使用
LVM VG LV 的扩展及收缩
##########################################
 
LVM 简介
LVM 是逻辑盘卷管理( Logical Volume Manager )的简称,它是 Linux 环境下对磁盘分区进行管理的一种机制, LVM 是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。前面谈到, LVM 是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。物理卷( physical volume )物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备 ( RAID) ,是 LVM 的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与 LVM 相关的管理参数。
LVM 组成 :
         PV    最底层的是物理卷即 PV,PV 可以是一个分区或者磁盘设备等任意块设备 (ID:8e)
         VG    PV 不能直接使用 ( 类似于扩展分区 ), 要在 PV 上创建卷组即 VG
         LV     VG 上创建文件系统来使用即 LV, 可以格式化挂载使用


对上图的说明 :LVM 最底层是 PV, 也就是物理磁盘 , 多块物理磁盘通过分区 , 转换格式转换为 LVM 格式 ,LVM 格式的 ID 号为 8e, 转换完成后 , 就可以使用 pvcreate 把几块物理磁盘 , 分别创建为 PV, 有了 PV, 就可以把多个 PV 通过 vgcreate 命令 , 加入到一个 VG , 也即是卷组 , 在这一步 , 多个磁盘在一个 VG , 我们看到的 , 只有是一个 VG 组的大小 , 而不再是单个物理磁盘的大小 . VG 空间不够的时候 , 我们还可以再增加物理磁盘 , 然后做成 PV, 加入到 VG 组时面 , 以增加 VM 的大小 .VG 做好之后 , 同一个 VG 组可以看成是一个大的物理磁盘 , 然后可以在 VG 上面 , 通过 lvcreate 命令创建 LV, 创建完 LV,LV 就可以直接格式化 , 然后挂载使用了 . 整个过程就是这样 .
 
LV 空间不够使用的时候 , 可以动态的扩展 VG 来实现 , VG 的扩展 , 需要新增 PV 来实现 ,LV VG 的扩展 , 是不可能也是不能够超越 LV 的物理边界的 .
LVM 可以动态的扩展和减小
LVM 可以使用快照 , 快照可以保存某一时刻数据的状态 , 快照保存在快照卷上 , 对数据的访问也可以通过快照来访问 . 快照里的数据 , 是不会变的 , 始终保存的是创建快照那一刻的数据 .
 
LVM 快照是如何实现的 :
在快照建立的时候 , 快照的内容是空的 . 通过快照 , 可以直接访问快照前的数据 , 快照相当于是建立了另外一条访问
数据的路径 ( 多路径 : 将一个文件系统提供了两个或者两个以上的访问通道 ), 快照保存快照之后的任何更改的数据 ,
把数据保存到快照卷里面 . 快照的大小 , 取决于更改数据的大小 . 快照并非永久保存数据的某一时刻的状态的 .
进程是无法识别不在同一时间点的数据文件的 , 所以 , 快照可以实现在线备份
快照卷的大小 , 取决于数据改变的频度和快照的使用寿命
 
LVM 的创建和使用 :
通过上面的介绍 , 我们知道了 :LVM 能被使用的 , LV, 想要创建 LV, 就必须有卷组 VG, 当然卷组 VM 是不可能凭空出现的 , 需要我们使用物理磁盘或者物理磁盘分区来组成 VG.
1, 创建物理卷 PV

我这里已经创建好了磁盘分区 , 并且转换成了 LVM 格式 , 然后就可以通过命令来创建 PV



创建成功了 , 我们只看下面的 Physical volume "/dev/sdb15" successfully created, 说明成功 , 创建 PV 的时候 , 他试图读取写入光盘 , 因为光盘是只读的 , 所以报了一堆 , 不用理会 . 我们可以通过命令 pvs 来简要的看一下系统上有哪些 PV



也可以通过 pvdisplay 来查看更详细一点儿的信息



这里看到的信息 , 更详细一点 .
2, 创建卷组 VG
同样的使用命令 vgcreate



以上命令创建了一个名字叫做 holdvg 的卷组
创建完成后 , 可以使用 vgs 来简单的查看一下 , 当然也有 vgdisplay 命令 , 来查看更详细一点的信息 . 这里不再抓图 .
3, 创建逻辑卷 LV
同样使用创建 lvcreate
         -L      指定 lv 的容量大小
         -n      指定 lv 的名字
         -p      指定 lv 的挂载权限 , 通常有 r rw 两种 , 一般 rw 只有在创建 lv 快照的时候才用
         -s      表示创建的是一个快照





做完 lv, 我们就可以直接挂载使用了 . 到这里 , 我们整个 lvm 就做完了 .
快照的创建和使用
快照也是在 VG 上创建的 , 同样使用 lvcreate 命令 , 加选项 -s 来表示创建的是一个快照
 
为了验证快照的效果 , 我这里拷贝一些数据到刚才创建的 lv 里面


文件拷贝好了 , 为了验证效果 , 我们创建一个快照


这里一定要指定 , 对哪个 lv 创建快照 .

创建完成后 , 可以直接挂载使用 , 而不用格式化 . 因为快照只是提供了对 lv 的另一个访问路径 .
现在 , 我们来更改 /mydata 的文件内容 , 来看下快照里的数据是不是发生改变 .



我在源 lv 里面加了一个 echo "Hello,Kitty", 并保存退出 , 我们看到 , 快照里的数据 , 是没有发生更改的 , 说明快照创建成功 .
LVM VG LV 的扩展及收缩
1,VG 的扩展



holdvg 里面 , 5 PV, 我们再增加一个 , 进行扩展 .

以上命令完成后 , 我们看到 , 原来有 5 个的 , 我加了两个 , 现在是 7 , 容量也发生了变量 .
 
2,lv 的扩展



当前文件 lv 的大小是 3G, 我们改一下
首先卸载文件系统 , 然后先扩展物理边界 (LV 大小 ), 再扩展文件系统边界



在扩展之前 , 最好先 e2fsck 来检测一下文件系统 , 下面我们来看一下吧




已经调整到了 5G
 

你可能感兴趣的:(linux,lvm,休闲,逻辑卷,逻辑卷管理)