LVM逻辑卷管理
LVM 是 Logical Volume Manager 的简称,译为中文就是逻辑卷管理。它是 Linux 下对硬盘分区的一种管理机制。LVM 适合于管理大存储设备,并允许用户动态调整文件系统的大小。此外,LVM的快照功能可以帮助我们快速备份数据。LVM 为我们提供了逻辑概念上的磁盘,使得文件系统不再关心底层物理磁盘的概念。
物理卷(Physical Volume,PV):就是真正的物理 硬盘或分区。
卷组(Volume Group,VG):将多个物理卷合起来 就组成了卷组。组成同一个卷组的物理卷可以是同一块硬盘的不同分区,也可以是不同硬盘上的不同分区。我们可以把卷组想象为一块逻辑硬盘。
逻辑卷(Logical Volume,LV):卷组是一块逻辑硬盘,硬盘必须分区之后才能使用,我们把这个分区称作逻辑卷。逻辑卷可以被格式化和写入数据。我们可以把逻辑卷想象为分区。
物理扩展(Physical Extend,PE):PE 是用来保存数据的最小单元,我们的数据实际上都是写入 PE 当中的。PE 的大小是可以配置的,默认是 4MB。
建立逻辑卷
建立物理卷
[root@localhost ~]# pvcreate /dev/设备名(可以是分区也可以是磁盘)
[root@localhost ~]#pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created.
[root@localhost ~]#pvcreate /dev/sdc1
Physical volume "/dev/sdc1" successfully created.
建立卷组
[root@localhost ~]# vgcreate 卷组名 /dev/设备名 … //将一个或多个设备加入卷组
[root@localhost ~]#vgcreate vg1 /dev/sdb1 /dev/sdc1
Volume group "vg1" successfully created
建立逻辑卷
[root@localhost ~]# lvcreate -L 逻辑卷大小 -n 逻辑卷名 卷组名
[root@localhost ~]#lvcreate -L 12G -n ljj1 vg1
Logical volume "ljj1" created.
使用逻辑卷
建立文件系统
[root@localhost ~]# mkfs.文件系统类型 /dev/卷组名/逻辑卷名
在这里插入代码片
[root@localhost ~]#mkfs.xfs /dev/vg1/ljj1
meta-data=/dev/vg1/ljj1 isize=512 agcount=4, agsize=786432 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=3145728, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
挂载
[root@localhost ~]# mount /dev/卷组名/逻辑卷名 挂载点
[root@localhost ~]#mount /dev/vg1/ljj1 /mnt
扩容逻辑卷
卷组扩容
[root@localhost ~]# vgextend 卷组名 /dev/设备名
[root@localhost ~]#vgextend vg1 /dev/sdd1
Physical volume "/dev/sdd1" successfully created.
Volume group "vg1" successfully extended
逻辑卷扩容
[root@localhost ~]# lvextend -L +扩容的大小 /dev/卷组名/逻辑卷名
注:扩容 -L 后一定要 + 号!!!这里是扩容,如果没有+号,会当成赋值。
[root@localhost ~]#lvextend -L +6G /dev/vg1/ljj1
Size of logical volume vg1/ljj1 changed from 12.00 GiB (3072 extents) to 18.00 GiB (4608 extents).
Logical volume vg1/ljj1 successfully resized.
刷新扩容逻辑卷
[root@localhost ~]# xfs_growfs 挂载点 //xfs文件系统刷新扩容方式
[root@localhost ~]# resize2fs /dev/卷组名/逻辑卷名 //ext4文件系统刷新扩容方式
通用方式:在逻辑卷扩容命令加上 -r 选项 自动刷新扩容
[root@localhost ~]#xfs_growfs /mnt
meta-data=/dev/mapper/vg1-ljj1 isize=512 agcount=4, agsize=786432 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=3145728, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 3145728 to 4718592
//刷新扩容后生效
[root@localhost ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 80G 0 disk
├─sda1 8:1 0 5G 0 part /boot
└─sda2 8:2 0 68G 0 part
├─centos-root 253:0 0 60G 0 lvm /
└─centos-swap 253:1 0 8G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
├─sdb1 8:17 0 10G 0 part
│ └─vg1-ljj1 253:2 0 18G 0 lvm /mnt
├─sdb2 8:18 0 5G 0 part
└─sdb3 8:19 0 4G 0 part
sdc 8:32 0 20G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─vg1-ljj1 253:2 0 18G 0 lvm /mnt
└─sdc2 8:34 0 5G 0 part
sdd 8:48 0 20G 0 disk
└─sdd1 8:49 0 5G 0 part
└─vg1-ljj1 253:2 0 18G 0 lvm /mnt
sr0 11:0 1 4.4G 0 rom /run/media/root/CentOS 7 x86_64