1,首先,了解相关的术语,参考下表:
*************************** 1. row *************************** 英文简称: LVM 中文名称: 逻辑卷管理 英文全称: Logic Volume Management 解释: LVM能将不同的物理卷(即类型为8E,无文件系统的LVM分区)整合到一起,合并 成一个大分区(无论这些小的LVM分区是否在一个磁盘上),这个大分区称为卷组。然后在这个 大分区上创建逻辑卷。这样做的好处是可以随时并入新的物理卷,增加大分区,然后随时扩增 LVM下的逻辑卷大小而不需要重启系统。 *************************** 2. row *************************** 英文简称: PV 中文名称: 物理卷 英文全称: Physical Volume 解释: 硬盘上的分区 *************************** 3. row *************************** 英文简称: LG 中文名称: 逻辑卷 英文全称: Logic Volume 解释: 将一个大区再进行分区所得的分区,为逻辑卷。在LVM中将很多物理卷(PV)合并 成卷组(VG),在对这个大的卷组进行分区得到逻辑卷(LV)。逻辑卷才可以被格式化,挂载进 行数据读写。 *************************** 4. row *************************** 英文简称: VG 中文名称: 卷组 英文全称: Volume Group 解释: 卷组包含单个或多个物理卷
2, 接着掌握相关命令,参考下表:
*************************** 1. row *************************** command: cfdisk parmeter: 磁盘分区工具,图形化界面,注意Type选项,选择8E即为LVM分区 usage_example: 图形化界面,看之即懂 *************************** 2. row *************************** command: pvcreate parmeter: 将现有的分区初始化成用于LVM的物理卷 usage_example: pvcreate /dev/sda1 *************************** 3. row *************************** command: vgcreate parmeter: 使用物理卷创建出一个卷组,-s参数能设定增量单位 usage_example: vgcreate -s 32M vg_hzaumycology /dev/sda2,创建一个卷 组vg_hzaumycology,并将/dev/sda2加入到卷组。 *************************** 4. row *************************** command: vgextend parmeter: 将一个物理卷加入到卷组中 usage_example: vgextend vg_hzaumycology /dev/sdb1,该命令将物理卷/dev /sdb1加入到卷组vg_hzaumycology中。 *************************** 5. row *************************** command: lvcreate parmeter: 在卷组上创建逻辑卷(LV), -L 指定创建LV大小, -n LV的名字 usage_example: lvcreate -L 300G -n vg_hzaumycology-lv_home vg_hza umycology,在卷组vg_hzaumycology上创建一个大小为500G的逻辑卷,卷名为vg_hz aumycology-lv_home。 *************************** 6. row *************************** command: vgdisplay parmeter: 查看现有的卷组情况 usage_example: vgdisplay卷组状态 *************************** 7. row *************************** command: mkfs.ext4 parmeter: 格式化工具,按默认参数格式化分区即可 usage_example: mkfs.ext4 /dev/vg_hzaumycology/vg_hzaumycology-lv_ home,将卷组中的逻辑卷格式化成ext4文件系统, *************************** 8. row *************************** command: lvextend parmeter: 增加逻辑卷的空间 -L后接+1G,表示增加1G空间, -L后接1G,表示这 个LV的空间是多少 usage_example: lvextend -L +500G /dev/vg_hzaumycology/vg_hzaumyco logy-lv_home,将该逻辑卷扩增500G空间。 *************************** 9. row *************************** command: df parmeter: 查看磁盘使用状况 usage_example: df -m,查看的磁盘大小以M *************************** 10. row *************************** command: resize2fs parmeter: 扩充文件系统 usage_example: reisize2fs /dev/vg_hzaumycology/vg_hzaumycology-lv _home,扩充该逻辑卷,和lvextend命令配合来增加磁盘空间,对应的文件系统为ext4。 *************************** 11. row *************************** command: resize2fs_ parmeter: 扩充文件系统 usage_example: reisize_reiserfs /dev/vg_hzaumycology/vg_hzaumycol ogy-lv_home,扩充该逻辑卷,和lvextend命令配合来增加磁盘空间,不过对应的文件系 统为ReiserFS。
3, 然后,按步骤了解LVM机制。以在CentOS6.2上添置一个3TB硬盘为例。
<1> 安装需要的软件和程序
#yum install cfdisk 安装cfdisk。CentOS6.2默认没有cfdisk这个命令,先安装该命令。
<2> 磁盘分区,创建物理卷
使用cfdisk命令来创建type为8E的LVM物理卷(PV)。 使用cfdisk命令将3TB硬盘分为/dev/sdb1(type为8E)和/dev/sdb2(Type为83) 两个分区,大小都为1500G。 partprobe 强制让核心重新捕捉一次 partition table.
<3> 创建卷组(VG)
使用vgcreate创建一个卷组。 CentOS6.2系统在装机是使用的默认设置,将/dev/sda1设为主分区,不属于LVM, 挂载到CentOS6.2系统/boot目录下,用于系统的启动;将/dev/sda2分区加入卷 组。 #vgcreate vg_hzaumycology /dev/sda2;
<4> 创建逻辑卷(LV)
使用lvcreate创建逻辑卷。 CentOS6.2默认创建了3个逻辑卷(LV)。 #lvcreate -L 50G -n vg_hzaumycology-lv_root vg_hzaumycology; #lvcreate -L 300G -n vg_hzaumycology-lv_home vg_hzaumycology; #lvcreate -L 32G -n vg_hzaumycology-lv_swap vg_hzaumycology; 逻辑卷在CentOS6.2系统中对应的位置为"/dev/卷组名/逻辑卷名"。
<5> 格式化逻辑卷
使用mkfs.ext4在逻辑卷上创建文件系统。 #mkfs.ext4 /dev/vg_hzaumycology/vg_hzaumycology-lv_root; #mkfs.ext4 /dev/vg_hzaumycology/vg_hzaumycology-lv_home;
<6> 将另外一个物理卷加入到卷组中
使用vgdisplay命令查看VG,使用vgextend命令将物理卷加入到卷组从而扩增卷组 大小。 #vgdisplay;查看到系统默认创建的卷组vg_hzaumycology #lvdisplay;查看到系统有3个逻辑卷vg_hzaumycology-lv_root, lvcreate vg_hzaumycology-lv_home和vg_hzaumycology-lv_swap分别对应这系统的 /root,/home目录和SWAP分区。#vgextend vg_hzaumycology /dev/sdb1; 将第二块硬盘的第一个分区1500G的空间加入到卷组vg_hzaumycology中。
<7> 扩增逻辑卷的容量
有了物理卷的加入,利于逻辑卷的扩增,使用命令lvextend和resize2fs来扩增逻 辑卷。 #lvextend -L +500G /dev/vg_hzaumycology/vg_hzaumycology-lv_ home; 给逻辑卷vg_hzaumycology-lv_home增加500G空间。 #resize2fs /dev/vg_hzaumycology/vg_hzaumycology-lv_home; 重新 给逻辑卷定大小,这一步需要许多时间,因为500G空间较大。完毕使用df -m命令查 看磁盘分区状况,才能看到磁盘容量变大。
<8> 为第二块磁盘的第二个分区/dev/sdb2创建文件系统并在开机自动挂载到指定位置
#mkfs.ext4 /dev/sdb2; 将/dev/sdb2格式化,创建文件系统ext4。 #mkdir /bioinformatic; chown chenlianfu:chenlianfu /bioinform atics; #chmod 750 /bioinformatics; 创建文件夹bioinformatics并修改权限用于 挂载/dev/sdb2。添加“/dev/sdb2 /bioinformatics ext4 uid=500,gid= 501 1 2”到/etc/fstab中。 将3TB磁盘分为2个1.5TB分区,其中一个分区整合到LVM中,另外一个分区不整合到LVM 而单独为一个区。以后重装系统到此3TB磁盘的时候,好将文件备份到分区2中,以避免 重要文件的丢失。