LVM概述:
Logical Volume Manager,逻辑卷管理
屏蔽了底层磁盘布局,便于动态调整磁盘容量
需要注意:/boot分区用于存放引导文件,不能应用LVM机制
LVM机制的基本概念
PV(Physical Volume,物理卷)
整个硬盘,或使用fdisk等工具建立的普通分区
包括许多默认4MB大小的PE(Physical Extent,基本单元)
VG(Volume Group,卷组)
一个或多个物理卷组合而成的整体
LV(Logical Volume,逻辑卷)
从卷组中分割出的一块空间,用于建立文件系统
LVM的管理命令:
主要命令的用法
pvcreate 设备名 如:pvcreate /dev/sdb1
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 大小 -n 逻辑卷名 卷组名
lvextend -L +大小 /dev/卷组名/逻辑卷名
应用示例:
需求描述:
公司的邮件服务器由于用户数量众多,邮件存储需要大量的空间,考虑到动态扩容的需要,计划增加两块SCSI硬盘并构建LVM逻辑卷,挂载到“/mail”目录专门用于存放邮件数据
实验环境,vmware虚拟机添加两块硬盘,并分区sdb1、sdc2
1、 转化物理卷
使用fdisk命令规划两个分区,类型设置为“8e” (fdisk 中用-t指定8e,LVM专用id)
/dev/sdb1、/dev/sdc1
使用pvcreate命令转换上述分区为物理卷
[root@localhost ~]# fdisk -l /dev/sdb /dev/sdc | grep "LVM" //正确分区结果 /dev/sdb1 1 9660 77593918+ 8e Linux LVM /dev/sdc1 1 9660 77593918+ 8e Linux LVM
[root@localhost ~]# pvcreate /dev/sdb1 Physical volume "/dev/sdb1" successfully created [root@localhost ~]# pvcreate /dev/sdc1 Physical volume "/dev/sdc1" successfully created
2. 创建卷组
使用vgcreate命令创建卷组mail_store
包括物理卷:/dec/sdb1、/dev/sdc1
[root@localhost ~]# vgcreate mail_store /dev/sdb1 /dev/sdc1 Volume group "mail_store" successfully created
3. 创建逻辑卷
使用lvcreate命令创建逻辑卷 mail
从卷组mail_store上划出60GB空间
使用mkfs命令创建ext4文件系统
[root@localhost ~]# lvcreate -L 60G -n mail mail_store /dev/cdrom: open failed: Read-only file system Logical volume "mail" created [root@localhost ~]# mkfs -t ext4 /dev/mail_store/mail
4、为逻辑卷扩容、缩容
扩容步骤:调整逻辑卷大小→调整文件系统大小
使用lvextend命令为逻辑卷 mail扩充容量
从卷组 mail_store 上再划出10GB给逻辑卷mail
e2fsck -f /dev/mail_store/mail -y # 检查逻辑卷
使用resize2fs命令更新系统识别的文件系统大小
[root@localhost ~]# lvextend -L +10G /dev/mail_store/mail
[root@localhost ~]# e2fsck -f /dev/mail_store/mail
[root@localhost ~]# resize2fs /dev/mail_store/mail
一个常用的命令,将所有的vg空余空间分配到指定lv
[root@localhost ~]# lvextend -l +100%free /dev/mail_store/mail
缩容步骤:调整文件系统大小→调整逻辑卷大小(注:和扩容步骤正好相反)
[root@localhost ~]# resize2fs -p /dev/mail_store/mail 10G //-p打印进度,将mail缩小至10G
[root@localhost ~]# lvreduce -L 10G /dev/mail_store/mail //将逻辑卷缩小至10G
5、挂载到相应目录下
临时挂载: [root@localhost ~]#mount /dev/mail_store/mail /test 开机自动挂载 [root@localhost ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Wed Nov 15 17:42:45 2017 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=4924e7a8-3a04-4efe-a0c1-2cfaee781f16 / xfs defaults 1 1 UUID=fecbd2dc-60b6-4aad-b5c8-da5e56edfa86 /boot xfs defaults 1 2 UUID=66d0952d-4f7d-4504-8574-912be3586d49 swap swap defaults 0 0 /dev/mail_store/mail /test ext4 defaults 0 0
扩展:fstab文件详解