逻辑卷管理器(LVM)让磁盘空间管理更为便捷。如果一个文件系统需要更多的空间,可以在它的卷组中将空闲空间添加到其逻辑卷中,而文件系统可以根据你的意愿调整大小。如果某个磁盘启动失败,用于替换的磁盘可以使用卷组注册成一个物理卷,而逻辑卷扩展可以将数据迁移到新磁盘而不会丢失数据。
在Linux中创建LVM存储
在如今,每台服务器空间都会因为我们的需求增长而不断扩展。逻辑卷可以用于RAID,SAN。单个物理卷将会被加入组以创建卷组,在卷组中,我们需要切割空间以创建逻辑卷。在使用逻辑卷时,我们可以使用某些命令来跨磁盘、跨逻辑卷扩展,或者减少逻辑卷大小,而不用重新格式化和重新对当前磁盘分区。卷可以跨磁盘抽取数据,这会增加I/O数据量。
LVM特性
- 可以在任何时候灵活地扩展空间。
- 可以安装和处理任何文件系统。
- 可以通过迁移来恢复错误磁盘。
- 可以使用快照功能恢复文件系统到先前的阶段。等等……
我的服务器设置 – 需求
- 操作系统 —— 安装有LVM的CentOS 6.5
- 服务器IP地址 —— 192.168.0.200
在Linux中创建LVM磁盘存储
1. 我们已经在虚拟磁盘(VDA)中使用了带LVM的CentOS 6.5操作系统。在此,我们可以使用下列命令查看到物理卷(PV),卷组(VG),逻辑卷(LV)。
# pvs
# vgs
# lvs
检查物理卷
下面是上面截图中各个参数的说明。
- 物理磁盘大小(PV Size)
- 用作虚拟磁盘vda的磁盘
- 卷组大小(VG Size)
- 卷组名称(vg_tecmint)
- 逻辑卷名称(LogVol00,LogVol01)
- LogVol00分配给swap,大小1GB
- LogVol01分配给/,大小16.5GB
从上面看,我们可以知道VDA磁盘中没有足够的空闲空间。
2. 为了创建一个新卷组,我们需要在这台服务器上添加额外的3个硬盘。3个驱动器不是强制使用的,只要一个就足够用来创建新的VG,并在其中创建LV了。我在这里添加了更多的磁盘,目的只是用于演示和更多命令功能的说明。
下面是我已经额外添加的磁盘。
sda, sdb, sdc
1725PE/3 = 575 PE.
575 PE x 32MB = 18400 --> 18GB
计算磁盘空间
按CRTL+D退出bc。现在让我们使用575个PE来创建3个逻辑卷。
# lvcreate -l (Extend size) -n (name_of_logical_volume) (volume_group)
# lvcreate -l 575 -n tecmint_documents tecmint_add_vg
# lvcreate -l 575 -n tecmint_manager tecmint_add_vg
# lvcreate -l 575 -n tecmint_public tecmint_add_vg
- –l – 使用扩展大小创建
- –n – 给逻辑卷命名
使用lvs命令来列出创建的逻辑卷。
# lvs
列出创建的逻辑卷
方法2: 使用GB大小创建逻辑卷
在使用GB大小创建逻辑卷时,我们不能获得精确的大小。因此,最好的办法是用扩展。
# lvcreate -L 18G -n tecmint_documents tecmint_add_vg
# lvcreate -L 18G -n tecmint_manager tecmint_add_vg
# lvcreate -L 18G -n tecmint_public tecmint_add_vg
# lvcreate -L 17.8G -n tecmint_public tecmint_add_vg
使用lvs命令来列出创建的逻辑卷。
# lvs
验证创建的逻辑卷
这里,我们可以看到,当创建第三个LV的时候,我们不能收集到18GB空间。这是因为尺寸有小小的改变,但在使用或者尺寸来创建LV时,这个问题会被忽略。
创建文件系统
12. 要使用逻辑卷,我们需要格式化。这里我使用ext4文件系统来创建卷,并打算挂载到/mnt。
# mkfs.ext4 /dev/tecmint_add_vg/tecmint_documents
# mkfs.ext4 /dev/tecmint_add_vg/tecmint_public
# mkfs.ext4 /dev/tecmint_add_vg/tecmint_manager
创建Ext4文件系统
13. 让我们在/mnt下创建目录,并将已创建好文件系统的逻辑卷挂载上去。
# mount /dev/tecmint_add_vg/tecmint_documents /mnt/tecmint_documents/
# mount /dev/tecmint_add_vg/tecmint_public /mnt/tecmint_public/
# mount /dev/tecmint_add_vg/tecmint_manager /mnt/tecmint_manager/
使用下面的命令来列出并确认挂载点。
# df -h
挂载逻辑卷
永久挂载
现在,这些逻辑卷是临时挂载上去的,要永久挂载,我们需要添加条目到fstab中。要达到这个目的,让我们使用下面的命令来获取挂载条目
# cat /etc/mtab
在输入来自mtab中的挂载条目内容时,我们需要在fstab中做些小小的改变,修改rw为默认。
# vim /etc/fstab
我们的fstab条目应该和下面的类似,使用wq!保存并退出fstab。
/dev/mapper/tecmint_add_vg-tecmint_documents /mnt/tecmint_documents ext4 defaults 0 0
/dev/mapper/tecmint_add_vg-tecmint_public /mnt/tecmint_public ext4 defaults 0 0
/dev/mapper/tecmint_add_vg-tecmint_manager /mnt/tecmint_manager ext4 defaults 0 0
获取mtab挂载条目*打开fstab文件添加自动挂载条目
重启前,执行mount -a命令来检查fstab条目。
# mount -av
验证fstab条目
这里,我们已经了解了怎样来使用逻辑卷构建灵活的存储,从使用物理磁盘到物理卷,物理卷到卷组,卷组再到逻辑卷。
在我即将奉献的文章中,我将介绍如何扩展卷组、逻辑卷,减少逻辑卷,拍快照以及从快照中恢复。
via: http://www.tecmint.com/create-lvm-storage-in-linux/
作者:Babin Lonston 译者:GOLinux 校对:wxy
发表回复