lvm
3.2 LVM逻辑卷的使用
1、简介
逻辑卷管理器(LogicalVolumeManager)本质上是一个虚拟设备驱动,是在内核中块设备和物理设备之间添加的一个新的抽象层次,如图所示。它可以将几块磁盘(物理卷,PhysicalVolume)组合起来形成一个存储池或者卷组(VolumeGroup)。LVM可以每次从卷组中划分出不同大小的逻辑卷(LogicalVolume)创建新的逻辑设备。底层的原始的磁盘不再由内核直接控制,而由LVM层来控制。对于上层应用来说卷组替代了磁盘块成为数据存储的基本单元。LVM管理着所有物理卷的物理盘区,维持着逻辑盘区和物理盘区之间的映射。LVM逻辑设备向上层应用提供了和物理磁盘相同的功能,如文件系统的创建和数据的访问等。但LVM逻辑设备不受物理约束的限制,逻辑卷不必是连续的空间,它可以跨越许多物理卷,并且可以在任何时候任意的调整大小。相比物理磁盘来说,更易于磁盘空间的管理。
2、基础准备
Centos 7 虚拟机
3、案例实施
1、配置IP
[root@localhost ~]# dhclient
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
重启网络并查看IP
[root@localhost ~]# systemctl restart network
[root@localhost ~]# ip a
配置完IP后,可以通过PC机的远程连接工具SecureCRT连接虚拟机。
2、添加硬盘
在VMwareWorkstation中的虚拟机设置界面,单击下方“添加”按钮,选择“硬盘”,然后单击右下角“下一步”按钮
选择SCSI(S)磁盘,单击右下角“下一步”按钮
选择“创建新虚拟磁盘(V)”选项,然后单击右下角“下一步”按钮
指定磁盘大小为20 GB,选择“将虚拟磁盘存储为单个文件(O)
文件名不做修改,使用默认名称,然后单击右下角“完成”按钮。
添加完磁盘后,重启虚拟机。重启过后,使用命令查看磁盘,命令如下:
[root@localhost ~]# lsblk
可以看到存在一块名叫sdb的块设备,大小为20 GB。
3、逻辑卷的使用
1、创建物理卷
在创建物理卷之前,需要对磁盘进行分区。首先使用fdisk命令对sdb进行分区操作,分出三个大小为5 GB的分区,命令如下:
[root@localhost ~]# fdisk /dev/sdb
Command (m for help): m //查看菜单
a 切换可启动标志
b 编辑bsd磁盘标
c 切换dos兼容性标志
d 删除一个分区
g 创建一个新的空GPT分区表
G 创建一个IRIX (SGI)分区表
l 列出已知的分区类型
m 打印这个菜单
n 添加一个新的分区
o 创建一个新的空DOS分区表
p 打印分区表
q 不保存更改就退出
s 让我们创建一个新的空的sun磁盘标签
t 不要更改分区的系统id
u 更换显示/输入单元
v 验证分区表
w 写表到磁盘并退出
x 额外功能(仅限专家使用)
Command (m for help): n
Select (default p): p
Partition number (1-4, default 1): 回车 //默认是1
First sector (2048-41943039, default 2048): 回车
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +5G //大写
Command (m for help): n
Select (default p): p
Partition number (2-4, default 2): 回车
First sector (10487808-41943039, default 10487808): 回车
Last sector, +sectors or +size{K,M,G} (10487808-41943039, default 41943039): +5G
Command (m for help): n
Select (default p): p
Partition number (2-4, default 2): 回车
First sector (10487808-41943039, default 10487808): 回车
Last sector, +sectors or +size{K,M,G} (10487808-41943039, default 41943039): +5G
Command (m for help): w //保存
[root@localhost ~]# lsblk
分完分区后,对这两个分区进行创建物理卷操作
[root@localhost ~]# pvcreate /dev/sdb1 /dev/sdb2
创建完毕后,可以查看物理卷的简单信息与详细信息
物理卷简单信息:
[root@localhost ~]# pvs
物理卷详细信息:
[root@localhost ~]# pvdisplay
2、创建卷组
使用刚才创建好的两个物理卷,创建名为myvg的卷组,命令如下:
[root@localhost ~]# vgcreate myvg /dev/sdb[1-2]
查看卷组信息,(可以查看到创建的myvg卷组,名字为centos的卷组是系统卷组,因为在安装系统的时候,是使用LVM模式安装的):
[root@localhost ~]# vgs
查看卷组详细信息,命令如下:
[root@localhost ~]# vgdisplay
删除卷组,重新创建卷组,并指定PE大小为16 MB,命令如下:
[root@localhost ~]# vgremove myvg
[root@localhost ~]# vgcreate -s 16m myvg /dev/sdb[1-2]
[root@localhost ~]# vgdisplay
向卷组myvg中添加一个物理卷,把/dev/sdb3分区加到卷组myvg中。
在添加的过程中,会自动将/dev/sdb3创建为物理卷
[root@localhost ~]# vgextend myvg /dev/sdb3
[root@localhost ~]# vgs
[root@localhost ~]# vgdisplay myvg
3、创建逻辑卷
创建逻辑卷,名称为mylv,大小为5 GB。命令如下:
[root@localhost ~]# lvcreate -L +5G -n mylv myvg
l -L:创建逻辑卷的大小large。
l -n:创建的逻辑卷名称name。
扫描上一步创建的lv逻辑卷。
[root@localhost ~]# lvscan
|
使用ext4文件系统格式化逻辑卷mylv
[root@localhost ~]# mkfs.ext4 /dev/mapper/myvg-mylv
|
把逻辑卷mylv挂载到/mnt下并验证。命令如下:
[root@localhost ~]# mount /dev/mapper/myvg-mylv /mnt/ [root@localhost ~]# df –h |
然后对创建的LVM卷扩容至1 GB。
[root@localhost ~]# lvextend -L +1G /dev/mapper/myvg-mylv |
[root@localhost ~]# resize2fs /dev/mapper/myvg-mylv
[root@localhost ~]# df -h
|
扩容逻辑卷成功。