企业真实场景由于硬盘常年大量读写,由于磁盘空间不足,需添加调整硬盘空间或者新硬盘,新添加的硬盘需要经过格式化、分区才能被Linux系统所使用,虚拟机CentOS 7 Linux模拟LVM调整/根分区的容量大小的方法。不需要关机。

图片1.png 图片2.png

LVM扩容方法,是通过添加新的磁盘或者磁盘分区来建立新的PV,再将PV(Physical Volume)加入到VG(Volume group)中,从而扩大VG空间,再对相关的LV(Logical volume逻辑卷)进行扩容,最后增加文件系统空间完成整个扩容工作。这种方法比较适合使用本地存储的物理机,因为磁盘空间都是固定的,只能通过增加硬盘来增加磁盘空间,这种方法可以在线完成,无需停机重启。

1) 查看Linux系统磁盘分区信息,df -h发现根分区才10GB,需要扩容到20GB,可以将/data分区压缩10G给/根分区使用,如图所示:

图片3.png

2) 执行df -Th查看磁盘分区文件系统格式,/和/data/均为XFS文件系统,如图所示:

图片4.png

3) XFS文件系统磁盘扩容,采用传统resize2fs指令压缩/data/分区空间,执行如下命令:resize2fs -p /dev/mapper/centos-data 60G,将其空间压缩成60GB,报错信息如下:(原因是XFS不支持直接动态Resize2FS缩容)

图片5.png

4) 如果要缩小/data/目录空间,就需要对/data/分区重新格式化、重做,那么提前备份/data/目录数据,然后删除/data/ LVM信息。指令如下: mkdir -p /tmp/date +%F

\cp -a /data/* /tmp/date +%F

umount /dev/mapper/centos-data

lvremove /dev/mapper/centos-data

图片6.png

5) 释放了/data/分区的空间之后,此时可以直接给/根分区扩容了,直接设置为40GB和刷新空间,命令操作如下:

lvextend -L 20G /dev/mapper/centos-root

xfs_growfs /dev/mapper/centos-root

图片7.png

6) 然后将剩余的空间继续划分给/data/分区,同时格式化,操作的方法和指令如下:

lvcreate -l +100%free -n data centos

mkfs.xfs /dev/mapper/centos-data

mount /dev/mapper/centos-data /data/

\cp -a /data/* /tmp/date +%F/* /data/

图片8.png

7) 根据如上所有的方法和指令,根分区/空间扩容成功,执行df -h命令,如图所示:

图片9.png

1.1 LVM分区Linux磁盘扩容实战二

企业真实场景由于硬盘常年大量读写,由于磁盘空间不足,需添加调整硬盘空间或者新硬盘,新添加的硬盘需要经过格式化、分区才能被Linux系统所使用,虚拟机CentOS 7 Linux模拟LVM增加/根分区的容量大小的方法。不需要关机。

LVM扩容方法,是通过添加新的磁盘或者磁盘分区来建立新的PV,再将PV加入到VG中,从而扩大VG空间,再对相关的LV进行扩容,最后增加文件系统空间完成整个扩容工作。这种方法比较适合使用本地存储的物理机,因为磁盘空间都是固定的,只能通过增加硬盘来增加磁盘空间,这种方法可以在线完成,无需停机重启。

1) 查看Linux系统磁盘分区信息,df -h发现根分区才40GB,需要扩容到60GB,可以将新添加的硬盘(20GB)空间给/根分区,如图所示:

图片10.png

2) 执行df -Th查看磁盘分区文件系统格式,/根分区为XFS文件系统,如图所示:

图片11.png

3) 添加完新硬盘之后,通过fdisk -l查看不到,需要执行如下指令,然后发现新硬盘设备名称为:/dev/sdb。

echo "- - -"> /sys/class/scsi_host/host0/scan

echo "- - -"> /sys/class/scsi_host/host0/scan

4) 创建PV卷,命令操作如下: pvcreate /dev/sdb

5) 显示原Linux系统磁盘VG卷组,操作的方法和指令如下: vgdisplay

图片12.png

6) 将新的PV扩展进VG centos,命令操作如下,如图所示:

vgextend centos /dev/sdb

vgs

vgscan

图片13.png

7) 将centos卷组上的root逻辑卷增加容量,命令操作如下,如图所示:

lvextend -l +100%free /dev/centos/root

xfs_growfs /dev/mapper/centos-root

8) 根据如上所有方法和步骤,根分区/扩容完成,成功扩容到60GB,执行df -h指令,如图所示:

图片14.png

1.2 LVM分区Linux磁盘扩容实战三

企业真实场景由于硬盘常年大量读写,由于磁盘空间不足,需添加调整硬盘空间或者新硬盘,新添加的硬盘需要经过格式化、分区才能被Linux系统所使用,虚拟机CentOS 7 Linux模拟LVM调整/根分区的容量大小的方法。不需要关机。

LVM扩容方法,是通过添加新的磁盘或者磁盘分区来建立新的PV,再将PV加入到VG中,从而扩大VG空间,再对相关的LV进行扩容,最后增加文件系统空间完成整个扩容工作。这种方法比较适合使用本地存储的物理机,因为磁盘空间都是固定的,只能通过增加硬盘来增加磁盘空间,这种方法可以在线完成,无需停机重启。

9) 查看Linux系统磁盘分区信息,df -h发现根分区才40GB,需要扩容到60GB,可以将新添加的硬盘(20GB)空间给/根分区,如图所示:

图片15.png

10) 执行df -Th查看磁盘分区文件系统格式,/根分区为EXT4文件系统,如图所示:

图片16.png

11) 添加完新硬盘之后,通过fdisk -l查看不到,需要执行如下指令,然后发现新硬盘设备名称为:/dev/sdb。

echo "- - -"> /sys/class/scsi_host/host0/scan

echo "- - -"> /sys/class/scsi_host/host0/scan

12) 创建PV卷,命令操作如下:

pvcreate /dev/sdb

13) 显示原Linux系统磁盘VG卷组,操作的方法和指令如下:

vgdisplay

图片17.png

14) 将新的PV扩展进VG centos,命令操作如下,如图所示:

vgextend centos /dev/sdb

vgs

vgscan

图片18.png

15) 将centos卷组上的root逻辑卷增加容量,命令操作如下,如图所示:

lvextend -l +100%free /dev/centos/root

resize2fs /dev/mapper/centos-root

16) 根据如上所有方法和步骤,根分区/扩容完成,成功扩容到60GB,执行df -h指令,如图所示:

图片19.png

1.4 基于GPT格式磁盘分区

MBR分区标准决定了MBR只支持在2TB以下的硬盘,为了支持能使用大于2T硬盘空间,需使用GPT格式进行分区。创建大于2TB的分区,需使用parted工具。

在企业真实环境中,通常一台服务器有多块硬盘,整个硬盘容量为10T,需要基于GTP格式对10T硬盘进行分区,操作步骤如下:

联想截图_20230828182055.png

(1) 如图7-12所示,假设/dev/sdb 为10T硬盘,使用GPT格式来格式化磁盘:

图片20.png

图7-12 假设/dev/sdb为10T设备

(2) 执行命令:parted -s /dev/sdb mklabel gpt,如图7-13所示:

图片21.png

图7-13 设置/dev/sdb为GPT格式磁盘

(3) 基于mkfs.ext3 /dev/sdb格式化磁盘,如图7-14所示:

图片22.png

图7-14 格式/dev/sdb磁盘

parted命令行也可以进行分区,如图7-15(a)、7-15(b)、7-15(c)所示:

联想截图_20230828182429.png 图片23.png

图7-15(a)parted工具执行GPT格式分区

图片24.png

图7-15(b)parted工具执行GPT格式分区

图片25.png

图7-15(c) parted工具执行GPT格式分区