almalinux系统-数据盘扩容后文件系统扩容步骤

almalinux系统-数据盘扩容后文件系统扩容步骤

一、简介:

在云资源池中我们会遇到数据盘容量不足扩容的场景,比如初始来个1T的云硬盘作为数据盘挂载,使用一段时间之后需要将这个云硬盘从1T扩容成3T,在数据盘扩容之后系统中分区也需要进行扩容步骤不然你系统中的数据盘容量还是不会变的。

先明确下数据盘格式化的三种方式:

  • 无分区格式化-挂载
  • 分区-格式化-挂载
  • LVM-pv-vg-lv-格式化-挂载

在确定初始化格式化方式下对应的文件系统扩容方式:

  • 解除挂载-扩展原文件系统-挂载
  • 将数据拷贝出去-基础挂载-进入磁盘删除分区重新分区-格式化-挂载
  • 解除挂载-将扩容磁盘分区-添加到pv-扩容vg-扩容lv-扩容文件系统-挂载

二、环境准备:

准备一台虚机,将之前创建的快照都删除,不然添加的数据盘扩容的时候会无法正常扩容。

添加一块30G的硬盘;

三、实际操作:

1、直接格式化

直接格式化是无分区管理成本,操作简洁。整个硬盘只能作为一个逻辑存储单元,挂载一个目录。无分区表,文件系统直接关联硬盘,损坏风险集中在文件系统本身。

bash 复制代码
# 直接格式化硬盘
mkfs.ext4 /dev/sdb
# 创建数据目录
mkdir /data
# 挂载数据盘
mount /dev/sdb /data/

创建测试文件,方便验证磁盘扩容之后数据是否正常。

bash 复制代码
echo 123 > /data/test
cat /data/test

格式化扩容场景:

关机之后将虚机的数据盘从30G------》100G;


进入系统中进行扩容操作

bash 复制代码
# 挂载查看容量还是30G的
mount /dev/sdb /data/
df -h /data/

# 解除挂载之后进行文件系统扩容
umount /data 
e2fsck -f /dev/sdb
resize2fs /dev/sdb

# 重新挂载查看数据盘容量已经变成100G了,查看测试文件也是存在的。
mount /dev/sdb /data/
df -h /data/
cat /data/test 

2、分区-格式化

使用parted命令gpt格式将整块磁盘分成一个分区然后格式化成ext4的,挂载之后创建一个测试文件。

bash 复制代码
# -s 静默模式,全程无交互;mklabel gpt 重建为gpt分区;primary 主分区;0%-100%分配所有容量
parted -s /dev/sdb mklabel gpt mkpart primary 0% 100%
# 格式化成ect4
mkfs.ext4 /dev/sdb1
# 挂载数据盘
mount /dev/sdb1 /data/
# 写入测试文件
echo 123 > /data/test

分区格式化扩容场景

扩容下磁盘,从30------》100;

进系统执行下扩容操作

bash 复制代码
# 静默调整分区1,占用硬盘全部100%空间
parted -s /dev/sdb resizepart 1 100% 
e2fsck -f /dev/sdb1
# 扩展文件系统
resize2fs /dev/sdb1
# 挂载验证测试文件还在
mount /dev/sdb1 /data/
cat /data/test 

如果数据量不是太大最稳妥的办法是将数据拷贝出去直接删除分区重新分区然后将数据拷贝进来。

bash 复制代码
# 删除原有的一个分区
parted -s /dev/sdb rm 1
# 将扩容磁盘所有容量给一个分区 
parted -s /dev/sdb mklabel gpt mkpart primary 0% 100%
# 格式化
mkfs.ext4 /dev/sdb1
# 挂载数据目录
mount /dev/sdb1 /data/
# 写入测试文件
echo 123 > /data/test

3、LVM

使用lvm操作数据盘的话就是pv-vg-lv挨个创建然后格式化了。

bash 复制代码
# 创建pv
pvcreate /dev/sdb
# 创建vg
vgcreate vg_data /dev/sdb
# 创建lv 
lvcreate -l 100%VG -n lv_data vg_data
# 格式化 
mkfs.ext4 /dev/vg_data/lv_data
# 挂载
mount /dev/vg_data/lv_data /data/

LVM格式化扩容场景

将数据盘从30------》100G;

bash 复制代码
# 扩容数据盘容量之后挂载好
mount /dev/vg_data/lv_data /data/
# 将扩容后的磁盘全部容量都加入原pv
pvresize /dev/sdb
# 查看vg_data的卷组容量应该是已经扩容了
vgdisplay vg_data
# 扩容lv_data逻辑卷 -l 100%VG 将vg全部容量扩容进来
lvextend -l 100%VG /dev/vg_data/lv_data
# 扩容文件系统,让系统识别出来
resize2fs /dev/vg_data/lv_data
# 查看逻辑卷情况确定正常扩容
lvdisplay /dev/vg_data/lv_data
# 查看挂载情况,磁盘容量,测试文件还在 
df -h /data/
cat /data/test 


相关推荐
AI智图坊8 小时前
多件装组合SKU图的批量生产效率分析:从PS手工到AI自动化的工作流改造
大数据·运维·人工智能·gpt·ai作画·自动化·aigc
AndrewHZ12 小时前
【LLM技术全景】规模定律与模型演进:为什么模型越大越强?
人工智能·gpt·深度学习·语言模型·llm·openai·规模定律
网安情报局14 小时前
告别排队与高延迟:直连GPT全系列,解锁低门槛、高稳定的AI生产力
人工智能·gpt·api·ai大模型
CV-deeplearning14 小时前
李沐论文精读合集:67 篇深度学习经典论文逐段精读,从 AlexNet 到 Sora,B 站播放百万级的 AI 自学圣经
gpt·大模型·transformer·李沐·论文精读·ai学习路线
me83216 小时前
【AI面试】小白理解大模型:仅编码器(BERT类)、仅解码器(GPT类)和完整的编码器-解码器架构各有什么优缺点?
人工智能·gpt·ai·bert
时代文章21 小时前
GPT-SoVITS 模型测试笔记
笔记·gpt·语音识别
kishu_iOS&AI2 天前
LLM —— 基础知识(Bert&GPT&T5)浅析
人工智能·gpt·bert
人工智能培训2 天前
从GPT到开源大模型
人工智能·gpt·深度学习·机器学习·容器·知识图谱
程序员佳佳2 天前
我在 Windows 和低配 Linux 上做 RAG:Milvus、FAISS、向量 API 中转的中立实测
linux·人工智能·windows·gpt·aigc·milvus·faiss
鲁子狄2 天前
lrnev:让 AI 协作开发「有记忆、可追溯」的项目治理引擎 | 零模型依赖,文件即真相
人工智能·笔记·gpt·ai·ai编程