LVM简介:
LVM(Logic Volume Manager)是Linux系统下一款逻辑卷管理软件,这是Linux环境下对磁盘分区管理的一种机制,传统Linux分区是固定大小的分区,LVM可以创建和管理逻辑卷,而且还可以动态扩容逻辑卷容量大小,实现分区动态扩容,类似IBM服务器独有的GPFS文件系统。
PV、VG、LV简介:
1、PV(Physical Volume):物理卷,处于LVM最底层,可以理解是物理硬盘。
2、VG(Volume Group):卷组,把多个PV组合成一个大容量的硬盘池子。
3、LV(Logical Volume):逻辑卷,相当于系统分区的概念。
LVM使用分层结构,如下图所示:
LVM版本说明:
LVM1 最初的LVM与1998年发布,只在Linux内核2.4版本上可用,它提供最基本的逻辑卷管理。
LVM2是LVM2的更新版本,在Linux内核2.6中才可用,它在标准的LVM-1功能外还提供了额外的功能。
模拟实验步骤:
1、CentOS 7.5系统添加两块硬盘,第一块diskA硬盘100GB,第二块diskB硬盘50GB
2、把diskA硬盘创建PV、VG、LV形成一个100GB逻辑卷
3、把diskB硬盘动态扩容到diskA 100GB逻辑卷中组合成150GB的逻辑卷
**提示:**
本教程适用文件格式(ext2/ext3/ext4),不适用xfs文件格式
CentOS系统环境:
[root@client01 ~]# cat /etc/centos-release
CentOS Linux release 7.5.1804 (Core)
[root@client01 ~]# uname -a
Linux client01 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@client01 ~]# cat /etc/locale.conf
LANG="en_US.UTF-8"
一、安装LVM软件(默认CentOS 7.5没有安装)
1、配置阿里yum源和epel源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum makecache
2、关闭防火墙和SElinux(防火墙和SElinux可以不关闭)
###关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
###关闭SElinux
sed -i "s/^SELINUX = .*/SELINUX = disabled/g" /etc/selinux/config
setenforce 0
getenforce
3、yum安装LVM软件
[root@client01 ~]# yum -y install lvm2
[root@client01 ~]# rpm -qa | grep lvm
lvm2-libs-2.02.185-2.el7_7.2.x86_64
lvm2-2.02.185-2.el7_7.2.x86_64
二、diskA 100GB硬盘创建PV、VG、LV
1、添加两块硬盘 diskA硬盘/dev/sdb diskB硬盘/deb/sdc
[root@client01 ~]# fdisk -l
Disk /dev/sda: 85.9 GB, 85899345920 bytes, 167772160 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000a6d40
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 1026047 512000 83 Linux
/dev/sda2 1026048 17410047 8192000 82 Linux swap / Solaris
/dev/sda3 17410048 167772159 75181056 83 Linux
Disk /dev/sdb: 108.4 GB, 108447924224 bytes, 211812352 sectors ##diskA 100GB硬盘
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdc: 54.8 GB, 54760833024 bytes, 106954752 sectors ##diskB 50GB硬盘
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
2、diskA 100GB硬盘/dev/sdb创建分区并设置成LVM分区类型
[root@client01 ~]# fdisk /dev/sdb ##管理磁盘分区
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x3523df03.
Command (m for help): p ##输入p打印当前磁盘上的分区信息
Disk /dev/sdb: 108.4 GB, 108447924224 bytes, 211812352 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x3523df03
Device Boot Start End Blocks Id System
Command (m for help): n ##输入n新建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p ##输入p 选择分区类型为主分区
Partition number (1-4, default 1): 1 ##输入1 选择为第一主分区
First sector (2048-211812351, default 2048): ##直接回车 选择分区起始块为1
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-211812351, default 211812351): +100G ##为新分区大小设置 100GB
Partition 1 of type Linux and of size 100 GiB is set
Command (m for help): p ##输入p打印当前磁盘上的分区信息
Disk /dev/sdb: 108.4 GB, 108447924224 bytes, 211812352 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x3523df03
Device Boot Start End Blocks Id System
/dev/sdb1 2048 209717247 104857600 83 Linux
Command (m for help): t ##输入t 改变分区类型
Selected partition 1
Hex code (type L to list all codes): 8e ##输入8e 改变分区类型为LVM
Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help): p ##输入p打印当前磁盘上的分区信息
Disk /dev/sdb: 108.4 GB, 108447924224 bytes, 211812352 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x3523df03
Device Boot Start End Blocks Id System
/dev/sdb1 2048 209717247 104857600 8e Linux LVM
Command (m for help): w ##输入w 保存磁盘管理分区操作
The partition table has been altered!
Calling ioctl() to re-read partition table.
3、diskA硬盘分区/dev/sdb1创建PV物理卷
[root@client01 ~]# pvcreate /dev/sdb1 ##创建PV物理卷
Physical volume "/dev/sdb1" successfully created.
[root@client01 ~]# pvs ##查看PV物理卷精简信息
PV VG Fmt Attr PSize PFree
/dev/sdb1 VGdata01 lvm2 a-- <100.00g <100.00g
[root@client01 ~]# pvdisplay ##查看PV物理卷详细信息
"/dev/sdb1" is a new physical volume of "100.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb1
VG Name
PV Size 100.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID e2bytS-WWl0-bddQ-MQZZ-gWeL-wVaz-07CAtx
4、将/dev/sdb1物理卷PV创建为卷组VG,名称VGdata01
[root@client01 ~]# vgcreate VGdata01 /dev/sdb1 ##创建VG卷组,卷组名称为VGdata01
Volume group "VGdata01" successfully created
[root@client01 ~]# vgs ##查看VG物理卷精简信息
VG #PV #LV #SN Attr VSize VFree
VGdata01 1 0 0 wz--n- <100.00g <100.00g
[root@client01 ~]# vgdisplay ##查看VG物理卷详细信息
--- Volume group ---
VG Name VGdata01
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size <100.00 GiB
PE Size 4.00 MiB
Total PE 25599
Alloc PE / Size 0 / 0
Free PE / Size 25599 / <100.00 GiB
VG UUID RRIAMu-S6IH-lyD0-MCuY-aYHO-Htwg-vhnOhS
5、将/dev/sdb1卷组VG创建逻辑卷LV(名称定义为LVdata01)并格式化、挂载使用
[root@client01 ~]# lvcreate -L 99G -n LVdata01 VGdata01 ##在名为VGdata01的VG上创建一个名为LVdata01逻辑卷
Logical volume "LVdata01" created.
[root@client01 ~]# lvs ##查看LV物理卷精简信息
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
LVdata01 VGdata01 -wi-a----- 99.00g
[root@client01 ~]# lvdisplay ##查看VG物理卷详细信息
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID it3Gf2-0fN5-EreM-ko7T-HqFL-1Z6R-ew3wGg
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 08:23:55 +0800
LV Status available
# open 0
LV Size 99.00 GiB
Current LE 25344
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@client01 ~]# mkfs.ext4 /dev/VGdata01/LVdata01 ##格式化LVdata01逻辑卷文件格式为ext4
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
6488064 inodes, 25952256 blocks
1297612 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2174746624
792 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
[root@client01 ~]# mkdir /LVdata01 ##创建一个挂载目录 LVdata01
[root@client01 ~]# mount /dev/VGdata01/LVdata01 /LVdata01/ ##挂载目录
[root@client01 ~]# df –Th ##查看磁盘挂载信息
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 xfs 72G 2.1G 70G 3% /
devtmpfs devtmpfs 981M 0 981M 0% /dev
tmpfs tmpfs 992M 0 992M 0% /dev/shm
tmpfs tmpfs 992M 9.6M 982M 1% /run
tmpfs tmpfs 992M 0 992M 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 117M 380M 24% /boot
tmpfs tmpfs 199M 0 199M 0% /run/user/0
/dev/mapper/VGdata01-LVdata01 ext4 98G 61M 93G 1% /LVdata01
6、永久挂载逻辑卷LVdata01
[root@client01 ~]# echo "/dev/mapper/VGdata01-LVdata01 /LVdata01 ext4 defaults 0 0" >> /etc/fstab
[root@client01 ~]# tail -1 /etc/fstab
/dev/mapper/VGdata01-LVdata01 /LVdata01 ext4 defaults 0 0
三、diskB 50GB硬盘扩容到diskA 100GB硬盘上形成150GB的LVdata01逻辑卷
1、diskB 50GB硬盘/dev/sdc创建分区并设置成LVM分区类型
[root@client01 ~]# fdisk /dev/sdc ##磁盘管理分区
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x8e2b1298.
Command (m for help): p ##输入p打印当前磁盘上的分区信息
Disk /dev/sdc: 54.8 GB, 54760833024 bytes, 106954752 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x8e2b1298
Device Boot Start End Blocks Id System
Command (m for help): n ##输入n新建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p ##输入p 选择分区类型为主分区
Partition number (1-4, default 1): 1 ##输入1 选择为第一主分区
First sector (2048-106954751, default 2048): ##直接回车 选择分区起始块为1
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-106954751, default 106954751): +50G ##为新分区大小设置 50GB
Partition 1 of type Linux and of size 50 GiB is set
Command (m for help): p ##输入p打印当前磁盘上的分区信息
Disk /dev/sdc: 54.8 GB, 54760833024 bytes, 106954752 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x8e2b1298
Device Boot Start End Blocks Id System
/dev/sdc1 2048 104859647 52428800 83 Linux
Command (m for help): t ##输入t 改变分区类型
Selected partition 1
Hex code (type L to list all codes): 8e ##输入8e 改变分区类型为LVM
Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help): p ##输入p打印当前磁盘上的分区信息
Disk /dev/sdc: 54.8 GB, 54760833024 bytes, 106954752 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x8e2b1298
Device Boot Start End Blocks Id System
/dev/sdc1 2048 104859647 52428800 8e Linux LVM
Command (m for help): w ##输入w 保存磁盘管理分区操作
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
2、diskB硬盘分区/dev/sdc1创建PV物理卷
[root@client01 ~]# pvcreate /dev/sdc1 ##创建PV物理卷
Physical volume "/dev/sdc1" successfully created.
[root@client01 ~]# pvs ##查看PV物理卷精简信息
PV VG Fmt Attr PSize PFree
/dev/sdb1 VGdata01 lvm2 a-- <100.00g 1020.00m
/dev/sdc1 lvm2 --- 50.00g 50.00g
[root@client01 ~]# pvdisplay ##查看PV物理卷详细信息
--- Physical volume ---
PV Name /dev/sdb1
VG Name VGdata01
PV Size 100.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 25599
Free PE 255
Allocated PE 25344
PV UUID QJzGP1-qAby-WWgZ-LJJ3-jIsa-anEh-Sr1DJ3
"/dev/sdc1" is a new physical volume of "50.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdc1
VG Name
PV Size 50.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID zcPqSu-dk4T-Ut2H-rUaQ-oPlM-Hvhu-glFlo6
3、把diskB 50GB物理卷PV扩容到diskA 100GB 卷组VGdata01里面
[root@client01 LVdata01]# vgextend VGdata01 /dev/sdc1 ##将diskB 50GB PV扩容到diskA 100Gb 卷组VGdata01
Volume group "VGdata01" successfully extended
[root@client01 LVdata01]# vgs ##查看VG物理卷精简信息
VG #PV #LV #SN Attr VSize VFree
VGdata01 2 1 0 wz--n- 149.99g 50.99g
[root@client01 LVdata01]# vgdisplay ##查看VG物理卷详细信息
--- Volume group ---
VG Name VGdata01
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 149.99 GiB
PE Size 4.00 MiB
Total PE 38398
Alloc PE / Size 25344 / 99.00 GiB
Free PE / Size 13054 / 50.99 GiB
VG UUID 11hnGp-ejdw-LFVQ-TnwN-SJuT-CzLM-OmZxQJ
4、在线把原来/dev/VGdata01/LVdata01逻辑卷100GB扩展到150GB
##在diskA 100GB逻辑卷创建测试文件
[root@client01 ~]# cd /LVdata01/
[root@client01 LVdata01]# touch {1..10}.txt
[root@client01 LVdata01]# ls -l
total 16
-rw-r--r-- 1 root root 0 Apr 30 08:47 10.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 1.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 2.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 3.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 4.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 5.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 6.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 7.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 8.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 9.txt
[root@client01 LVdata01]# echo "This is a test LVM" > 1.txt
[root@client01 LVdata01]# cat 1.txt
This is a test LVM
[root@client01 LVdata01]# lvdisplay ##查看原来/dev/VGdata01/LVdata01逻辑卷信息
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID it3Gf2-0fN5-EreM-ko7T-HqFL-1Z6R-ew3wGg
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 08:23:55 +0800
LV Status available
# open 1
LV Size 99.00 GiB
Current LE 25344
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@client01 LVdata01]# lvextend -L +49G /dev/VGdata01/LVdata01 ##将LVdata01逻辑卷扩容至150GB
Size of logical volume VGdata01/LVdata01 changed from 99.00 GiB (25344 extents) to 148.00 GiB (37888 extents).
Logical volume VGdata01/LVdata01 successfully resized.
[root@client01 LVdata01]# lvs ##查看LV物理卷精简信息
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
LVdata01 VGdata01 -wi-ao---- 148.00g
[root@client01 LVdata01]# lvdisplay ##查看LV物理卷详细信息
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID it3Gf2-0fN5-EreM-ko7T-HqFL-1Z6R-ew3wGg
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 08:23:55 +0800
LV Status available
# open 1
LV Size 148.00 GiB
Current LE 37888
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@client01 LVdata01]# e2fsck -f /dev/VGdata01/ ##强制检查VGdata01卷组是否正常,如果异常自动修复
e2fsck 1.42.9 (28-Dec-2013)
e2fsck: Is a directory while trying to open /dev/VGdata01/
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
###注意,如果执行resize2fs命令提示:Couldn't find valid filesystem superblock.需要使用xfs_growfs /dev/VGdata01/LVdata01命令刷新lv即可正常查看增加的大小。
[root@client01 LVdata01]# resize2fs -p /dev/VGdata01/LVdata01 ##在线调整ext2\ext3\ext4文件系统的大小
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/VGdata01/LVdata01 is mounted on /LVdata01; on-line resizing required
old_desc_blocks = 13, new_desc_blocks = 19
The filesystem on /dev/VGdata01/LVdata01 is now 38797312 blocks long.
tmpfs 199M 0 199M 0% /run/user/0
[root@client01 LVdata01]# df –Th ##查看磁盘挂载信息
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 xfs 72G 2.1G 70G 3% /
devtmpfs devtmpfs 981M 0 981M 0% /dev
tmpfs tmpfs 992M 0 992M 0% /dev/shm
tmpfs tmpfs 992M 9.6M 982M 1% /run
tmpfs tmpfs 992M 0 992M 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 117M 380M 24% /boot
/dev/mapper/VGdata01-LVdata01 ext4 146G 60M 139G 1% /LVdata01
tmpfs tmpfs 199M 0 199M 0% /run/user/0
##检查LVdata01逻辑卷备份的资料是否异常
[root@client01 LVdata01]# ls –l
total 20
-rw-r--r-- 1 root root 0 Apr 30 08:47 10.txt
-rw-r--r-- 1 root root 19 Apr 30 08:48 1.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 2.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 3.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 4.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 5.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 6.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 7.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 8.txt
-rw-r--r-- 1 root root 0 Apr 30 08:47 9.txt
drwx------ 2 root root 16384 Apr 30 08:25 lost+found
[root@client01 LVdata01]# cat 1.txt
This is a test LVM
四、缩减逻辑卷
提示:不能在线缩减逻辑卷,必须先umount卸载
[root@client01 ~]# umount /dev/VGdata01/LVdata01 ##确认卸载挂载
[root@client01 ~]# df –Th ##查看磁盘挂载情况
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 xfs 72G 2.1G 70G 3% /
devtmpfs devtmpfs 981M 0 981M 0% /dev
tmpfs tmpfs 992M 9.6M 982M 1% /run
tmpfs tmpfs 992M 0 992M 0% /sys/fs/cgroup
[root@client01 ~]# e2fsck -f /dev/VGdata01/LVdata01 ##强制检测文件系统是否损坏,损坏自动修复
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/VGdata01/LVdata01: 21/9764864 files (0.0% non-contiguous), 661123/39059456 blocks
[root@client01 ~]# lvdisplay ##详细查看LV逻辑卷情况
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID EOhXzn-nBy9-UxLQ-N8ju-WhJC-11Vz-fZHKVc
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 15:13:28 +0800
LV Status available
# open 0
LV Size 149.00 GiB
Current LE 38144
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@client01 ~]# resize2fs /dev/VGdata01/LVdata01 30G ##在线调整ext2\ext3\ext4文件系统为30G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/VGdata01/LVdata01 to 7864320 (4k) blocks.
The filesystem on /dev/VGdata01/LVdata01 is now 7864320 blocks long.
[root@client01 ~]# lvreduce -L 30G /dev/VGdata01/LVdata01 ##LV逻辑卷从150GB缩减30GB
WARNING: Reducing active logical volume to 30.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce VGdata01/LVdata01? [y/n]: y ##输入y 确认
Size of logical volume VGdata01/LVdata01 changed from 149.00 GiB (38144 extents) to 30.00 GiB (7680 extents).
Logical volume VGdata01/LVdata01 successfully resized.
[root@client01 ~]# lvdisplay ##详细查看LV逻辑卷情况
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID EOhXzn-nBy9-UxLQ-N8ju-WhJC-11Vz-fZHKVc
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 15:13:28 +0800
LV Status available
# open 0
LV Size 30.00 GiB
Current LE 7680
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@client01 ~]# mount /dev/VGdata01/LVdata01 /LVdata01/ ##挂载LV逻辑卷
[root@client01 ~]# ls -l /LVdata01/ ##查看逻辑卷资料是否完整
total 20
-rw-r--r-- 1 root root 0 Apr 30 15:15 10.txt
-rw-r--r-- 1 root root 19 Apr 30 15:16 1.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 2.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 3.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 4.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 5.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 6.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 7.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 8.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 9.txt
drwx------ 2 root root 16384 Apr 30 15:14 lost+found
[root@client01 ~]# cat /LVdata01/1.txt
This is a test LVM
五、备份逻辑卷LVdata01
[root@client01 ~]# lvdisplay ##详细查看LV逻辑卷LVdata01
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID EOhXzn-nBy9-UxLQ-N8ju-WhJC-11Vz-fZHKVc
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 15:13:28 +0800
LV Status available
# open 0
LV Size 30.00 GiB
Current LE 7680
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@client01 ~]# lvcreate -L 30M -n LVdata01_backup -s -p r /dev/VGdata01/LVdata01 ##创建快照
Rounding up size to full physical extent 32.00 MiB
Logical volume "LVdata01_backup" created.
[root@client01 ~]# lvdisplay ##详细查看LV逻辑卷LVdata01
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01
LV Name LVdata01
VG Name VGdata01
LV UUID EOhXzn-nBy9-UxLQ-N8ju-WhJC-11Vz-fZHKVc
LV Write Access read/write
LV Creation host, time client01, 2020-04-30 15:13:28 +0800
LV snapshot status source of
LVdata01_backup [active]
LV Status available
# open 0
LV Size 30.00 GiB
Current LE 7680
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
--- Logical volume ---
LV Path /dev/VGdata01/LVdata01_backup
LV Name LVdata01_backup
VG Name VGdata01
LV UUID kpR2BG-kxQc-D26r-qUWC-j8sx-Kc4O-H3Oesw
LV Write Access read only
LV Creation host, time client01, 2020-04-30 17:42:30 +0800
LV snapshot status active destination for LVdata01
LV Status available
# open 0
LV Size 30.00 GiB
Current LE 7680
COW-table size 32.00 MiB
COW-table LE 8
Allocated to snapshot 0.00%
Snapshot chunk size 4.00 KiB
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:3
[root@client01 ~]# mount /dev/VGdata01/LVdata01_backup /mnt/
mount: /dev/mapper/VGdata01-LVdata01_backup is write-protected, mounting read-only
[root@client01 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 xfs 72G 2.1G 70G 3% /
devtmpfs devtmpfs 981M 0 981M 0% /dev
tmpfs tmpfs 992M 9.6M 982M 1% /run
tmpfs tmpfs 992M 0 992M 0% /sys/fs/cgroup
/dev/mapper/VGdata01-LVdata01_backup ext4 30G 45M 28G 1% /mnt
[root@client01 ~]# mount /dev/VGdata01/LVdata01 /LVdata01/
[root@client01 ~]# ls -l /mnt/
total 8
-rw-r--r-- 1 root root 0 Apr 30 15:15 10.txt
-rw-r--r-- 1 root root 19 Apr 30 15:16 1.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 2.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 3.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 4.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 5.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 6.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 7.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 8.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 9.txt
drwx------ 2 root root 4096 Apr 30 15:14 lost+found
[root@client01 ~]# ls -l /LVdata01/
total 8
-rw-r--r-- 1 root root 0 Apr 30 15:15 10.txt
-rw-r--r-- 1 root root 19 Apr 30 15:16 1.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 2.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 3.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 4.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 5.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 6.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 7.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 8.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 9.txt
drwx------ 2 root root 4096 Apr 30 15:14 lost+found
[root@client01 ~]# rm -rf /LVdata01/*
[root@client01 ~]# cp -rp /mnt/* /LVdata01/
[root@client01 ~]# ls -l /LVdata01/
total 8
-rw-r--r-- 1 root root 0 Apr 30 15:15 10.txt
-rw-r--r-- 1 root root 19 Apr 30 15:16 1.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 2.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 3.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 4.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 5.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 6.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 7.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 8.txt
-rw-r--r-- 1 root root 0 Apr 30 15:15 9.txt
drwx------ 2 root root 4096 Apr 30 15:14 lost+found