文章目录

  • 前言背景
  • 一、环境说明
  • 二、操作步骤
  • 1.暂停服务,备份数据
  • 2.卸载硬盘
  • 3. 操作硬盘分区所在的硬盘
  • 4.把新建的硬盘分区做成逻辑卷
  • (1)检查是否安装逻辑券软件包
  • (2)建立物理卷
  • (3)建立卷组
  • (4)建立逻辑卷
  • (5)格式化 并 挂载
  • (6)迁回数据验证
  • 5.把数据分区加入逻辑卷
  • (1)停止服务,解除挂载
  • (2)格式化 原先的存放数据的分区
  • (3)增加原先的存放数据的分区添加进卷组
  • (4)查看加入新分区后的卷组大小
  • (5)调整逻辑卷的容量
  • 三、验证结果
  • 1、再次挂载、验证
  • 2、设置开机自动挂载
  • 3、重启再次验证
  • 总结



前言背景

最近由于遇到一台 生产服务器 上硬盘分区空间不足,但该文件系统不是LVM的,

  想给其扩容,又怕数据丢失,服务无法正常启动,故在虚机上测试了一下。
  
  虚机测试内容如下:sdb硬盘的sdb1分区上已有mysql数据库在运行
  
  由于该分区不是逻辑卷文件系统,但想在不丢失数据而且mysql服务能正常恢复的情况下

  对该分区进行扩容。

一、环境说明

操作系统:centos 7.9

centos7扩容磁盘大小 centos硬盘扩容_服务器


虚拟机硬盘分区情况:

centos7扩容磁盘大小 centos硬盘扩容_服务器_02

二、操作步骤

1.暂停服务,备份数据

centos7扩容磁盘大小 centos硬盘扩容_服务器_03

cp -a  原数据文件夹   新数据文件夹     
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。
不加 -a 的话 后期恢复数据得改成数据迁移前的对应权限,否则服务可能无法启动

centos7扩容磁盘大小 centos硬盘扩容_架构_04

2.卸载硬盘

umount 挂载目录

centos7扩容磁盘大小 centos硬盘扩容_运维_05

3. 操作硬盘分区所在的硬盘

fdisk /dev/sdb
以实际情况为准

centos7扩容磁盘大小 centos硬盘扩容_linux_06


centos7扩容磁盘大小 centos硬盘扩容_运维_07

lsblk 
查看一下新建的分区

centos7扩容磁盘大小 centos硬盘扩容_服务器_08

4.把新建的硬盘分区做成逻辑卷

(1)检查是否安装逻辑券软件包

rpm -qa | grep lvm
假如没有的话,请yum安装一下,离线安装可以用ISO镜像做yum源安装,也可以rpm包安装

centos7扩容磁盘大小 centos硬盘扩容_运维_09

(2)建立物理卷

pvcreate /dev/sdb2

pvcreate [设备文件名]

centos7扩容磁盘大小 centos硬盘扩容_架构_10

(3)建立卷组

vgcreate vg_test /dev/sdb2

vgcreate [选项] 卷组名 物理卷名

centos7扩容磁盘大小 centos硬盘扩容_服务器_11

(4)建立逻辑卷

lvcreate -L 79G -n lv_test vg_test
由于我的分区实际容量不到80G,就写79G了  
lvcreate [选项] [-n 逻辑卷名] 卷组名

centos7扩容磁盘大小 centos硬盘扩容_服务器_12

(5)格式化 并 挂载

mkfs -t ext4 /dev/vg_test/lv_test

centos7扩容磁盘大小 centos硬盘扩容_运维_13

mount /dev/vg_test/lv_test /test
挂载回原来的目录

centos7扩容磁盘大小 centos硬盘扩容_centos7扩容磁盘大小_14

(6)迁回数据验证

centos7扩容磁盘大小 centos硬盘扩容_运维_15

服务正常启动,到这里最简单,还有个思路,就是把数据备份了,直接把sbd硬盘格式化并挂载,再把数据迁移回去,做法有点冒险,但也是可以达到目的。可是到后期的话扩容也是比较麻烦,做成LVM,一劳永逸。

centos7扩容磁盘大小 centos硬盘扩容_linux_16

5.把数据分区加入逻辑卷

(1)停止服务,解除挂载

centos7扩容磁盘大小 centos硬盘扩容_服务器_17

(2)格式化 原先的存放数据的分区

mkfs -t ext4 /dev/sdb1

centos7扩容磁盘大小 centos硬盘扩容_centos7扩容磁盘大小_18

(3)增加原先的存放数据的分区添加进卷组

vgdisplay     
查看卷组

centos7扩容磁盘大小 centos硬盘扩容_服务器_19

vgextend vg_test /dev/sdb1

centos7扩容磁盘大小 centos硬盘扩容_运维_20

(4)查看加入新分区后的卷组大小

centos7扩容磁盘大小 centos硬盘扩容_linux_21

(5)调整逻辑卷的容量

lvresize -L 229.99G /dev/vg_test/lv_test
容量可以根据上图得出
lvresize [选项] 逻辑卷设备文件名

centos7扩容磁盘大小 centos硬盘扩容_linux_22

三、验证结果

1、再次挂载、验证

centos7扩容磁盘大小 centos硬盘扩容_centos7扩容磁盘大小_23


centos7扩容磁盘大小 centos硬盘扩容_架构_24

2、设置开机自动挂载

vi /etc/fstab

按照格式新增 你的硬盘信息

centos7扩容磁盘大小 centos硬盘扩容_linux_25

3、重启再次验证

centos7扩容磁盘大小 centos硬盘扩容_服务器_26


centos7扩容磁盘大小 centos硬盘扩容_架构_27


总结

路漫漫其修远兮,加油打工人,2022/11/20。