linux通过lvm调整分区大小

前言

当在 LVM 中的磁盘空间耗尽时,可以通过缩小现有的没有使用全部空间的 LVM,在卷组上腾出一些空闲空间。

调整分区大小中,减少/缩小逻辑卷是具有高风险的,会有极大的概率造成数据损坏。

如果可以尽量用新挂盘并增容的方式来扩容容量不够的分区,而不是选择减少富余分区的容量,然后调整到不够的分区。

如果真想如此操作,缩减 LVM 之前,建议先做一个备份。
注意:GFS2 或者 XFS 文件系统上不支持缩小

1.减少逻辑券大小

主要步骤如下:

  • 1.卸载文件系统
  • 2.检查文件系统是否有任何错误
  • 3.缩小文件系统的大小
  • 4.缩小逻辑卷的大小
  • 5.重新检查文件系统是否存在错误(可选)
  • 6.挂载文件系统
  • 7.检查减少后的文件系统大小

比如: 你有一个 100GB 的没有使用全部空间的 LVM,你想把它减少到 80GB ,这样 20GB 可以用于其他用途。

1.0 查看硬盘分区信息

1.执行命令fdisk -l查看磁盘信息

fdisk -l

可以看到硬盘大小一共119.24g,挂载了一个主分区和一个逻辑分区,其中逻辑分区是lvm管理。

2.执行 lvdisplay命令查看逻辑分区信息

lvdisplay

可以看到逻辑分区被分为三个区,这里主要将/home分区减少20g并给root分区扩容20g

3.使用df命令查看系统文件夹挂载情况

df -h /home

1.1卸载文件系统

使用 umount 命令卸载文件系统:

umount /dev/mapper/debian--vg-home

1.2检查文件系统是否有任何错误

使用 e2fsck 命令检查文件系统是否有错误:

e2fsck -f /dev/mapper/debian--vg-home

1.3缩小文件系统

通过命令resize2fs缩小文件系统。

resize2fs [现有逻辑卷名] [新的文件系统大小]

下面的命令将把 /home 文件系统从 85GB 缩小到 60GB

resize2fs /dev/mapper/debian--vg-home 60G

1.4减少逻辑卷 (LVM) 容量

现使用 lvreduce 命令缩小逻辑卷(LVM) 的大小。

lvreduce [新的 LVM 大小] [现有逻辑卷名称]

执行命令,将 /dev/mapper/debian--vg-home 逻辑卷 (LVM) 从 85GB 缩小到 60GB。

lvreduce -L 60G /dev/mapper/debian--vg-home

这里会提示确认,一般数据损坏都是这一步造成的,建议备份数据。

确认没问题,输入y确认。

1.5检查文件系统是否有错误(可选)

缩减 LVM 后再次检查文件系统是否有错误:

e2fsck -f /dev/mapper/debian--vg-home

1.6 挂载文件系统并检查缩小后的大小

使用 mount 命令挂载分区

mount /dev/mapper/debian--vg-home

使用df命令查看分区挂载

df -h /home

2.增加逻辑卷大小

主要步骤如下:

  • 1.查看分区信息
  • 3.增加文件系统的大小
  • 4.增加逻辑卷的大小
  • 7.检查减少后的文件系统大小

2.1查看硬盘分区信息

1.执行命令fdisk -l查看磁盘信息

fdisk -l

2.使用df命令查看系统文件夹挂载情况

df -h /root

2.2增加文件系统

通过命令lvextend缩小文件系统。

lvextend -l [大小参数] [逻辑卷名]

参数可以是具体大小,比如20G;也可以是+100%FREE,表示剩余的所有空闲空间

这里将剩余的空间都扩容到root分区。

lvextend -l +100%FREE /dev/mapper/debian--vg-root

2.3增加逻辑券(lvm)大小

通过命令resize2fs增加逻辑券。

resize2fs [现有逻辑卷名] [新的文件系统大小]

刷新逻辑券

resize2fs /dev/mapper/debian--vg-root

2.4 检查扩容后大小

使用df命令查看

df -h /root

相关推荐
.柒宇.几秒前
AI掘金头条项目 Docker Compose 部署完整教程(附踩坑记录)
运维·后端·python·docker·容器·fastapi
Nightwish5几秒前
Linux随记(三十)
linux·运维·mysql·ambari
cui_ruicheng7 分钟前
Linux信号机制(一):从概念到产生与处理
linux·运维·服务器
zhouwy1131 小时前
Linux文件系统与IO编程
linux·c++
KnowSafe2 小时前
从手动到智能:证书自动化解决方案的技术演进
运维·自动化
墨风如雪8 小时前
甲骨文云(Oracle Cloud)最新注册防坑记录:被ABC了怎么办?
服务器
xingfujie9 小时前
运维实战攻略
运维
HHFQ9 小时前
在 systemd 场景下的 CPU 限制方式
linux
道清茗9 小时前
【RH294知识点汇总】第 9 章 《 自动执行 Linux 管理任务 》常见问题
linux·运维·服务器
山羊硬件Time9 小时前
自动化管理Linux的好工具:shell script
linux·嵌入式硬件·硬件工程师·基带工程·硬件开发