CentOS LVM逻辑卷管理
Posted asker009
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS LVM逻辑卷管理相关的知识,希望对你有一定的参考价值。
在CentOS 挂载(U盘NTFS格式,新硬盘,增加交换分区,扩展根分区等)中扩展根分区部分用的就是LVM逻辑卷管理来进行扩展的。
1、为什么会有逻辑卷管理
传统磁盘管理是直接对硬盘分区进行访问,你如果磁盘不够了,再加一块硬盘,然后分区格式化,系统和应用直接对分区后的硬盘直接访问。
这个访问是独立,脱离原有目录系统的,比如在windows系统里经常出现C盘不够了,当时分区没想到windows会如此臃肿,要解决这个问题,
只能重新挂硬盘,借助第三方软件来动态的、非在线式的调整,而且,非常慢。
而LVM逻辑卷管理,可以动态的、实时的实现这个过程,非常快。LVM能做到这点,是LVM在磁盘上抽象了一层管理系统,系统和应用已经不
直接访问磁盘,而是访问这个抽象层,也就是LVM里的逻辑卷。
2、常用的LVM命令
物理卷
|
卷组 | 逻辑卷 | |
扫描 | pvscan(pvs) | vgscan(vgs) | lvscan(lvs) |
创建 | pvcreate | vgcreate | lvcreate |
显示 | pvdisplay | vgdisplay | lvdisplay |
删除 | pvremove | vgremove | lvremove |
扩展 | vgextend | lvextend | |
缩减 | vgreduce | lvreduce |
3、逻辑卷示例
3.1、创建物理卷
查看目前物理卷 [[email protected] ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <19.00g 0 /dev/sdb3 centos lvm2 a-- <15.00g 0 查看目前磁盘情况,这个命令比较多,这里用lsblk直观一些 [[email protected] ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 32G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk ├─sdb1 8:17 0 2G 0 part /backup ├─sdb2 8:18 0 3G 0 part [SWAP] └─sdb3 8:19 0 15G 0 part └─centos-root 253:0 0 32G 0 lvm / sdc 8:32 0 1G 0 disk sdd 8:48 0 1G 0 disk sde 8:64 0 1G 0 disk sdf 8:80 0 1G 0 disk sdg 8:96 0 1G 0 disk sr0 11:0 1 4.2G 0 rom 把sdc,sdd,sde三个磁盘都创建成物理卷 [[email protected] ~]# pvcreate /dev/sdc /dev/sdd /dev/sde Physical volume "/dev/sdc" successfully created. Physical volume "/dev/sdd" successfully created. Physical volume "/dev/sde" successfully created. [[email protected] ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <19.00g 0 /dev/sdb3 centos lvm2 a-- <15.00g 0 /dev/sdc lvm2 --- 1.00g 1.00g /dev/sdd lvm2 --- 1.00g 1.00g /dev/sde lvm2 --- 1.00g 1.00g
3.2、创建新卷组esdata
查看目前卷组情况 [[email protected] ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 2 2 0 wz--n- 33.99g 0 创建esdata卷组 [[email protected] ~]# vgcreate esdata /dev/sdc /dev/sdd /dev/sde Volume group "esdata" successfully created 再次查看 [[email protected] ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 2 2 0 wz--n- 33.99g 0 esdata 3 0 0 wz--n- <2.99g <2.99g
3.3、创建逻辑卷,800M大小
[[email protected] ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 31.99g swap centos -wi-ao---- 2.00g 从esdata上创建名字为vo_esData的逻辑卷,800M [[email protected] ~]# lvcreate -n vo_esData -L 800M esdata Logical volume "vo_esData" created. [[email protected] ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 31.99g swap centos -wi-ao---- 2.00g vo_esData esdata -wi-a----- 800.00m
3.4、格式化逻辑卷vo_esData
查看逻辑卷路径
[[email protected] ~]# lvdisplay --- Logical volume --- LV Path /dev/esdata/vo_esData LV Name vo_esData VG Name esdata LV UUID tMu3LD-Xxyy-10b4-Nbvn-SFe9-hn9W-kdFlDV LV Write Access read/write LV Creation host, time bigdata-senior01.home.com, 2019-01-17 15:39:59 +0800 LV Status available # open 0 LV Size 800.00 MiB Current LE 200 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:2
格式化成ext4格式,为啥不是xfs格式?因为xfs缩减不方便 [[email protected] ~]# mkfs.ext4 /dev/esdata/vo_esData mke2fs 1.42.9 (28-Dec-2013) 文件系统标签= OS type: Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 51296 inodes, 204800 blocks 10240 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=209715200 7 block groups 32768 blocks per group, 32768 fragments per group 7328 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840 Allocating group tables: 完成 正在写入inode表: 完成 Creating journal (4096 blocks): 完成 Writing superblocks and filesystem accounting information: 完成
3.5、挂载
[[email protected] /]# mount /dev/esdata/vo_esData /mnt/esdata [[email protected] /]# ls /mnt/esdata lost+found [[email protected] /]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 32G 4.2G 28G 13% / devtmpfs 901M 0 901M 0% /dev tmpfs 912M 0 912M 0% /dev/shm tmpfs 912M 8.6M 904M 1% /run tmpfs 912M 0 912M 0% /sys/fs/cgroup /dev/sda1 1014M 143M 872M 15% /boot /dev/sdb1 2.0G 67M 2.0G 4% /backup tmpfs 183M 0 183M 0% /run/user/1004 /dev/mapper/esdata-vo_esData 772M 1.6M 714M 1% /mnt/esdata
3.6、扩展逻辑卷,把刚才创建的800M的逻辑卷扩展到1.5G,只要卷组里还有足够的资源,就可以扩展逻辑卷。
如果卷组的空间不够,还可以再加硬盘创建物理卷,然后,把物理卷加入到对应的卷组里,保证卷组的资源。
[[email protected] /]# vgs VG #PV #LV #SN Attr VSize VFree centos 2 2 0 wz--n- 33.99g 0 esdata 3 1 0 wz--n- <2.99g <2.21g #卷组还有2.21GB的空间可用 [[email protected] /]# vgdisplay --- Volume group --- VG Name esdata System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 2 VG Access read/write VG Status resizable MAX LV 0 Cur LV 1 Open LV 1 Max PV 0 Cur PV 3 Act PV 3 VG Size <2.99 GiB PE Size 4.00 MiB Total PE 765 Alloc PE / Size 200 / 800.00 MiB Free PE / Size 565 / <2.21 GiB #卷组还有2.21GB的空间可用 VG UUID HhfZYk-xAbw-oYGP-S2bc-r53K-CxUO-ds2NUi [[email protected] /]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 31.99g swap centos -wi-ao---- 2.00g vo_esData esdata -wi-ao---- 800.00m [[email protected] /]# lvextend -L 1.5G /dev/esdata/vo_esData Size of logical volume esdata/vo_esData changed from 800.00 MiB (200 extents) to 1.50 GiB (384 extents). Logical volume esdata/vo_esData successfully resized. [[email protected] /]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 31.99g swap centos -wi-ao---- 2.00g vo_esData esdata -wi-ao---- 1.50g [[email protected] /]# vgs VG #PV #LV #SN Attr VSize VFree centos 2 2 0 wz--n- 33.99g 0 esdata 3 1 0 wz--n- <2.99g <1.49g
卸载设备,然后才能拉伸文件系统容量
[[email protected] /]# umount /dev/esdata/vo_esData
[[email protected] /]# e2fsck /dev/esdata/vo_esData
e2fsck 1.42.9 (28-Dec-2013)
/dev/esdata/vo_esData: clean, 11/51296 files, 7726/204800 blocks
[[email protected] /]# resize2fs /dev/esdata/vo_esData
resize2fs 1.42.9 (28-Dec-2013)
请先运行 ‘e2fsck -f /dev/esdata/vo_esData‘.
[[email protected] /]# e2fsck -f /dev/esdata/vo_esData
e2fsck 1.42.9 (28-Dec-2013)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
/dev/esdata/vo_esData: 11/51296 files (0.0% non-contiguous), 7726/204800 blocks
[[email protected] /]# resize2fs /dev/esdata/vo_esData
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/esdata/vo_esData to 393216 (4k) blocks.
The filesystem on /dev/esdata/vo_esData is now 393216 blocks long.
[[email protected] /]# mount /dev/esdata/vo_esData /mnt/esdata
[[email protected] /]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 32G 4.2G 28G 13% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.6M 904M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 143M 872M 15% /boot
/dev/sdb1 2.0G 67M 2.0G 4% /backup
tmpfs 183M 0 183M 0% /run/user/1004
/dev/mapper/esdata-vo_esData 1.5G 2.4M 1.4G 1% /mnt/esdata
3.7、缩小逻辑卷容量
以上是关于CentOS LVM逻辑卷管理的主要内容,如果未能解决你的问题,请参考以下文章