基于LINUX虚拟机LVM系统的实现

2016-10-11 11:34:04何德仙
中国科技信息 2016年17期
关键词:磁盘命令硬盘

何德仙

曲靖工商职业技术学校

基于LINUX虚拟机LVM系统的实现

何德仙

曲靖工商职业技术学校

何德仙(1977-)女,讲师,研究方向:计算机网络及应用。

本文介绍了目前磁盘动态管理方法存在的不足,提出了LINUX 下LVM系统实现磁盘动态管理的思路和方法,用实验的过程实现了LINUX虚拟下多磁盘建立LVM系统的方法,有效地降低了实验成本、提高了实验效率。

Linux用户在安装配置Linux操作系统,并为系统进行磁盘分区的时候,对于如何确定每个分区的容量,是比较困难的。因为即要考虑当前每个分区的大小和用途,又要考虑在将来对分区的使用需求,还要考虑当前实际硬盘的大小。如果考虑不全面,当以后某个分区空间不足时,对这管理员来说是一件棘手的事情,管理员要么备份整个分区数据,重新对硬盘分区,再恢复数据,然而这并不是一劳永逸的做法,工作量是非常大的,也会带来安全隐患,以后可能还会面临这样的问题。

当然,也有一些解决办法,如使用类似Partition Magic这样的可以动态调整磁盘分区的工具,然而使用这类工具并不能彻底解决问题,首先是使用Partition Magic工具后需要重新启动系统才能生效,如果对于重要的服务器,重新启动系统或停机是不可接受的操作;其次是如果某个分区的空间再次被耗尽,就会再次产生同样的难题;第三,对于添加新硬盘,如果需要创建一个能跨越多个独立硬盘驱动器的文件系统时,分区调整方案就无法实现。

优秀的解决方案是什么呢?基本思路是在不停机前提下,能够对文件系统的容量进行动态调整,而且还可以方便地实现文件系统跨越不同的独立磁盘和分区。可喜的是,Linux系统提供的LVM机制,对于解决上述难题,提供了一个完美的解决方案。另一方面,在Linux教学过程中,LVM系统的实现与管理对计算机硬件环境有较高的要求,一般实验环境难以达到教学效果,也为实验管理人员带来极大的挑战,LINUX虚拟机为开创这些实验环境提供了广阔的空间。

LVM原理

LVM优点

LVM全称为Logical Volume Manager,译成中文名称叫逻辑卷管理,LVM系统最早应用于IBM AIX系统上,后来由Heinz Mauelshagen在Linux 2.4内核上实现。LVM系统是在硬盘或分区上建立的一个逻辑管理层,这可以将一个或多个硬盘的分区进行逻辑集合,把不同大小的硬盘分区整合为另一个单位——卷组(Volume Group,VG),卷组可以看成是一个存储池,系统管理员在卷组上根据需要建立一个或多个逻辑卷(Logical Volumes,LV),并进一步在逻辑卷上创建文件系统。在以后的管理工作中,管理员可根据需要随意调整卷组和逻辑卷的大小,当硬盘的使用容量不足的时候,管理员可以继续将额外的硬盘或分区加入到卷组中,再把卷组划分到逻辑卷空间中。采用这样的可持续空间的增减方法,即实现了磁盘空间的动态管理,又解决了Partition Magic等工具的不足。

LVM相关概念及原理

LVM系统涉及物理分区、物理卷、物理区域、卷组、逻辑卷、逻辑区域等基本概念,要弄清LVM原理,首先要阐述清楚上述的几个基本概念。

与LVM相关的几个概念

(1)物理分区(Physical Partions)

物理分区指系统中的物理存储设备(如硬盘)上建立的分区,如:在LINUX系统中,/dev/hda表示第一块IDE接口硬盘、/dev/sdb表示第二块SCSI接口硬盘,是存储系统中最底层的物理存储单元。

(2)物理卷(Physical Volume,PV)

物理卷简称PV,指是磁盘上的分区,在LINUX中物理卷是从物理分区上划分出来的,物理卷处于LVM系统的最底层,一个物理卷可以包含整个物理磁盘,也可以是磁盘中的一个分区,但它与基本的物理分区是有差别的,它包含有与LVM管理相关的参数信息。

(3)物理区域(Physical Extent,PE)

物理区域是指在物理卷上划分的基本单元,PE具有唯一的编址,是被LVM系统寻址的最小单位。PE的大小默认是4MB,在创建物理卷时确定,但也是可调整的,然而大小一旦确定将不能更改。因此物理卷(PV)是由大小相等的基本单元物理区域(PE)组成。

(4)卷组(Volume Group,VG)

卷组简称VG,可以看成是单独的逻辑磁盘,建立的逻辑卷(PV)之上,卷组可由一个或多个逻辑卷组成。在建立卷组时,一个卷组(VG)至少要包含一个物理卷(PV),之后还可以动态地添加物理卷(PV)到卷组(VG)中。卷组是为后一步建立逻辑卷而准备的。

(5)逻辑卷(Logical Volume,LV)

逻辑卷,英文名Logical Volume,简称LV,逻辑卷在使用过程中类似于系统中的普通磁盘分区,但性质又与普通分区有很大差别。逻辑卷是在卷组中创建的,创建逻辑卷时可在卷组容量范围内随意设定大小,逻辑卷建立后还可以动态地扩展或缩小空间,系统中可建立一个或多个逻辑卷,多个逻辑卷可以建立在同一个卷组上,也可以建立在不同的多个卷组上。建立好的逻辑卷,就可以在其上建立文件系统(比如/home或者/usr等)。

(6)逻辑区域(Logical Extent,LE)

逻辑区域(LE)是逻辑卷(LV)中可用于分配的最小存储单元,逻辑区域的大小也是在建立逻辑卷时就确定的,取决于逻辑卷所在卷组中的物理区域的大小,也就是说,在同一个卷组中,逻辑区域(LE)的大小和物理区域(PE)的大小是相同的。

LVM模型

弄清楚上面的概念之后,就可依次建立LVM系统。创建顺序是先创建PV,再创建VG,最后创建LV。也就是说,首先创建一个物理卷(对应一个物理硬盘分区或者一个物理硬盘),然后将分区或者硬盘加入到卷组中(相当于一个逻辑上的大硬盘),再在这个大硬盘上划分逻辑分区LV,最后,把LV逻辑卷格式化后,就可以像传统分区那样,把它挂载到一个挂载点上使用。LVM模型如图1所示。

LINUX虚拟机LVM硬件环境仿真

VMware环境下硬件环境的生成

为了实现LVM系统,在VMware的LINUX虚拟机(本例所用版本为Red Hat Enterprise LINUX 5)中,添加两块SCSI硬盘,一块为容量为1GB,另一块容量为2GB,作为LINUX虚拟机中的物理存储介质。如图2所示。

LINUX虚拟机磁盘分区管理

在LINUX系统中,上述添加的两块磁盘设备分别标识为”/dev/sdb”和”/dev/sdc”,可以用fdisk命令进行查看和分区(命令状态下),当然也可以在图形环境下操作。在本例中,把”/dev/sdb”设备分为”/dev/sdb1”和 ”/dev/sdb2” 两个分区,容量分别为400MB和624MB,把”/dev/sdc”设备分为”/dev/sdc1”、 ”/dev/sdc2”和/dev/sdc3” 等三个分区,容量分别为800MB、1024MB和224MB。并把五个分区都设置为”Linux LVM”类型,详细分区过程可查阅相关文献。分区结果如图3所示。(注:因LINUX分区大小以cylinders数确定,所以实际容量与理论上有一定误差)

LVM系统建立与管理

完成上述操作以后,LVM系统的硬件仿真平台基本生成,后面的工作就是建立与管理PV、VG和LV。

图1 LVM结构模型

图2 LINUX虚拟中添加硬盘

图3 磁盘分区的建立

图4 物理卷的生成

PV生成

PV的生成是利用pvcreate命令在上述3.2节中创建好的分区上建立的,PV的设备文件使用系统中现有的磁盘分区设备文件的名称,且生成的PV的名称也与分区名称相同。图4所示是在”/dev/sdb1/”~”/dev/sdc3”等5个分区上创建PV的命令及结果。

VG生成与管理

在创建好PV后,使用”vgcreate”命令可建立VG。卷组设备文件使用/dev目录下与卷组同名的目录表示,该卷组中的所有逻辑设备文件都将建立在该目录下,卷组目录是在使用vgcreate命令建立卷组时创建的。一个VG可包含一个或多个PV。例如,使用下列命令是分别用”/dev/sdb1/”~”/dev/sdc3”等5个PV创建一个名为”vg001”的卷组:

[root@localhost~]#vgcreate vg001/dev/sdb1/dev/sdb2/dev/sdc1/dev/sdc2/dev/sdc3

在上条命令中,没加参数指定PE的值,因此默认的PE为4MB,如需加大可以用-L选项。如有还有需要,还可使用”vgextend”命令扩充VG的容量。VG生成后,可以用命令”vgdisplay vg001”来查看”vg001”卷组的参数,图5可以看出,5个物理卷构成的卷组总容量(VG Size)约为3GB,与原始分区容量之和相等。

LV生成与管理

建立好VG后,可以使用lvcreate命令在已有VG上建立LV。逻辑卷设备文件位于其所在的卷组的卷组目录中,该文件是使用lvcreate命令建立LV时创建的。例如,要在卷组”vg001”上创建一个名称为”lv01”,大小为500M 的LV,使用下面命令:

[root@localhost~]#lvcreate-L 500M-n lv01 vg001

LV创建成功后,使用’’lvdisplay”命令查看它的参数,如图6所示。

当LV的容量以后面的使用中不能满足需要时,可以利用”lvextend”命令进行扩充,把VG中的空闲空间再分配到LV中,另一方面,当LV的空间太大时,可以利用”lvreduce”命令来减小它的容量,非常方面地做到容量的动态调整。也可以移除不需要的LV、VG及PV,具体操作方式读者可查阅相关文献。

逻辑卷创建好后,使用命令”mkfs.ext2/dev/vg001/lv01”为”lv01”逻辑创建文件系统,然后再将它挂载(mount)到指定目录,就可以当成普通磁盘空间来使用。

总结

本文通过实际实验的方法,阐述了在LINUX虚拟机环境建立了多个虚拟磁盘,并在虚拟磁盘上建立多个分区,然后在这些分区上建立物理卷(PV)、卷组(VG)及逻辑卷(LV),最后在逻辑卷上创建文件系统并实现了磁盘的访问。通过实验证实,LVM系统较传统磁盘空间,在磁盘数量动态添加、磁盘容量动态调整方面,有着不可替代的优势,为磁盘存储服务领域提拱了方便、经济、实用的有效途经。同时,在硬件条件缺乏、投入资金有限的情况下,用LINUX虚拟机成功建立并访问了LVM系统,为实际实验教学带来了极大的便利,也为开创其他虚拟实验提供了参考价值。

图5 卷组vg001的参数

图6 逻辑卷lv01的参数

猜你喜欢
磁盘命令硬盘
只听主人的命令
HiFi级4K硬盘播放机 亿格瑞A15
Egreat(亿格瑞)A10二代 4K硬盘播放机
解决Windows磁盘签名冲突
电脑爱好者(2019年2期)2019-10-30 03:45:31
修改磁盘属性
移防命令下达后
磁盘组群组及iSCSI Target设置
创建VSAN群集
这是人民的命令
我区电视台对硬盘播出系统的应用