生产环境经常会遇到磁盘空间不足的情况。下面介绍lvm卷扩容的解决方法。运维实践:Linux系统对oracle数据库所在分区进行扩容。运维实践:Linux系统对oracle数据库所在分区进行扩容。发现磁盘空间不够,添加新硬盘扩充分区/home/oracle。使用[root@localhost~]#lsblkNAMEMAJ:MINRMSIZEROTYPEMOUNTPOINTsda8:0020G0disk├─sda18:10200M0part/boot└─sda28:2019G0part检查系统空间├─centos-root253:0010G0lvm/├─centos-swap253:104G0lvm[SWAP]└─centos-home253:205G0lvm/homesr011:014.2G0romby可以看出使用了lvm分区。如果不是lvm分区,则不能使用此方法进行扩容。oracle所在目录大小为5G。/dev/sdb添加一个新硬盘并将分区更改为lvm格式[root@localhost~]#fdisk/dev/sdb欢迎使用fdisk(util-linux2.23.2)。更改将保留在内存中,直到您决定将它们写入磁盘。使用写命令前请三思。设备不包含可识别的分区表使用磁盘标识符0xd10b295e创建一个新的DOS磁盘标签。命令(输入m寻求帮助):nPartitiontype:pprimary(0primary,0extended,4free)eextendedSelect(defaultp):pPartitionnumber(1-4,default1):startingsector(2048-20971519,thedefaultis2048):会使用默认值2048Lastsector,+sectoror+size{K,M,G}(2048-20971519,defaultis20971519):+5Gpartition1已经设置为Linux类型,size设置为5GiB命令(键入m寻求帮助):t选择分区1Hex代码(键入L列出所有代码):8e将分区类型“Linux”更改为“LinuxLVM”命令(键入m寻求帮助):pdisk/dev/sdb:10.7GB,10737418240字节,20971520个扇区单位=扇区1*512=512字节扇区大小(逻辑/物理):512字节/512字节I/O大小(最小/最佳):512字节/512字节磁盘标签类型:dos磁盘标识符:0xd10b295e设备启动开始结束块IDSystem/dev/sdb120481048780752428808eLinuxLVM命令(键入m寻求帮助):w分区表已更改!调用ioctl()重新读取分区表。同步磁盘。新添加的硬盘初始化为物理卷[root@localhost~]#pvcreate/dev/sdb1物理卷“/dev/sdb1”创建成功。查看卷组[root@localhost~]#vgdisplay---Volumegroup---VGNamecentosSystemIDFormatlvm2MetadataAreas1MetadataSequenceNo4VGAccessread/writeVGStatusresizableMAXLV0CurLV3OpenLV3MaxPV0CurPV1ActPV1VG大小19.00GiBPE大小4.00MiB总PE4864AllocPE/大小4864/19.00GiB空闲PE/大小0/0VGUUIDsNqtMh-Yg2a-Y2gb-RZh6-yVJg-gVQH-6n2bxz从这里我们可以看出卷组名称是centos,大小是19G。将新的物理卷添加到卷组中[root@localhost~]#vgextendcentos/dev/sdb1卷组“centos”成功扩展再次查看卷组[root@linuxprobe.com~]#vgdisplay---卷组---VG名称centos系统ID格式lvm2MetadataAreas2MetadataSequenceNo5VGAccessread/writeVGStatusresizableMAXLV0CurLV3OpenLV3MaxPV0CurPV2ActPV2VGSize<24.00GiBPESize4.00MiBTotalPE6143AllocPE/大小4864/19.00GiB免费PE/大小1279/<5.00GiBVGUUIDsNqtMh-Yg2a-Y2gb-RZh6-yVJg-gVQH-6n2bxz将卷组大小更改为24G将逻辑卷大小增加到4G[root@localhost~]#lvresize-L+4G/dev/centos/home逻辑卷centos/home的大小从5.00GiB(1280个扩展)更改为9.00GiB(2304个扩展)。逻辑卷centos/home成功调整大小。查看磁盘大小[root@localhost~]#lsblkNAMEMAJ:MINRMSIZEROTYPEMOUNTPOINTsda8:0020G0disk├─sda18:10200M0part/boot└─sda28:2019G0part├─centos-root253:0010G0lvm/├─centos-swap253:104G0lvm[SWAP]└─centos-home253:209G0lvm/homesdb8:16010G0disk└─sdb18:1705G0part└─centos-home253:209G0lvm/homesr011:014.2G0rom现在看到centos-home已经变成9Gdf-h查看磁盘大小[root@localhost~]#df-h可用的文件系统容量%挂载点/dev/mapper/centos-root10G927M9.1G10%/devtmpfs478M0478M0%/devtmpfs489M0489M0%/dev/shmtmpfs489M6.8M482M2%/runtmpfs489M0489M0%/sys/fs/cgroup/dev/mapper/centos-home5.0G33M5.0G1%/home/dev/sda1197M103M95M53%/boottmpfs98M098M0%/run/user/0此时发现/dev/mapper/centos-home还是5G调整文件系统大小[root@localhost~]#xfs_growfs/dev/centos/homemeta-data=/开发/映射器/centos-homeisize=512agcount=4,agsize=327680blks=sectsz=512attr=2,projid32bit=1=crc=1finobt=0spinodes=0data=bsize=4096blocks=1310720,imaxpct=25=sunit=0width=0blksnaming=version2bsize=4096ascii-ci=0ftype=1log=internalbsize=4096blocks=2560,version=2=sectsz=512sunit=0blks,lazy-count=1realtime=noneextsz=4096块=0,rtextents=0datablocks由1310720改为2359296如果是xfs,使用xfs_growfs如果是ext4,使用resize2fs再次查看[root@localhost~]#df-hfilesystemcapacityisusedandavailable%isused点/dev/mapper/centos-root10G927M9.1G10%/devtmpfs478M0478M0%/devtmpfs489M0489M0%/dev/shmtmpfs489M6.8M482M2%/runtmpfs489M0489M0%/sys/fs/cgroup/dev/mapper/centos-home9.0G33M9.0G1%/home/dev/sda1197M103M95M53%/boottmpfs98M098M0%/run/user/0喜欢这个/home/home分区才真正完成扩容。综上,生产环境空间的扩展已经完成。
