CentOS7使用LV扩容实现减少home磁盘空间增加到var磁盘

本地学习机使用,生产环境请勿操作!!!
本文操作的扩容前提是:centos,磁盘类型是LVM,文件类型是xfs
因未修改docker的存储目录,导致/var空间不足,正好尝试动态扩容,测试有效

1.查看磁盘分区信息

df -h

在这里插入图片描述

fdisk -l

在这里插入图片描述

2.备份home 文件(最好先拍个快照!!!,防止操作有问题,无法恢复)

cd /home
tar -cvf home.tar ./*

在这里插入图片描述

3.停止对home目录的访问进程并卸载

在这里插入图片描述

fuser -km /home

在这里插入图片描述
已经没有home了
在这里插入图片描述

4.减少home的磁盘空间:lvreduce -L -20G /dev/mapper/centos-home

在这里插入图片描述

5.增加var的磁盘空间:lvextend -L +20G /dev/mapper/centos-var

在这里插入图片描述

6.查看磁盘列表信息

在这里插入图片描述

7.扩展var分区

如果使用xfs文件系统使用xfs_growfs
如果使用ext4文件系统使用resize2fs

xfs_growfs 不支持减少磁盘空间,可以使用mkfs.xfs命令重新格式化一下,但是文件会丢失!!!
在这里插入图片描述

xfs_growfs /dev/mapper/centos-var

在这里插入图片描述

8.再次查看磁盘空间信息

在这里插入图片描述

lsblk

在这里插入图片描述

9.重置home

重启之前可以先执行lvremove /dev/mapper/centos-home试试能不能删除,如果报包含系统文件的导致无法删除,就需要重启,使用系统控制台操作,若是可以直接删除,则无需重启

  • 重启:reboot,输入超管密码,进入系统命令行

reboot

在这里插入图片描述

  • 删除home的逻辑卷:lvremove /dev/mapper/centos-home

lvremove /dev/mapper/centos-home

在这里插入图片描述

  • 查看vg :vgdisplay,会多出30G使用空间

vgdisplay

在这里插入图片描述

  • 重新创建home分区:lvcreate -L 30G -n /dev/mapper/centos-home

lvcreate -L 30G -n /dev/mapper/centos-home

在这里插入图片描述

  • 创建xfs格式的磁盘:mkfs.xfs /dev/mapper/centos-home

mkfs.xfs /dev/mapper/centos-home

在这里插入图片描述

  • 挂载home:mount /dev/mapper/centos-home /home

mount /dev/mapper/centos-home /home

在这里插入图片描述
新磁盘是空的
在这里插入图片描述

  • 恢复备份的home文件

tar -xvf home.tar -C /home

输入reboot 重启系统即可
在这里插入图片描述

10.补充知识

xfs 相关的维护命令:

mkfs.xfs: 创建 xfs 文件系统

xfs_admin: 调整 xfs 文件系统的各种参数

xfs_copy: 拷贝 xfs 文件系统的内容到一个或多个目标系统(并行方式)

xfs_db: 调试或检测 xfs 文件系统(查看文件系统碎片等)

xfs_check: 检测 xfs 文件系统的完整性

xfs_bmap: 查看一个文件的块映射

xfs_repair: 尝试修复受损的 xfs 文件系统

xfs_fsr: 碎片整理

xfs_quota: 管理 xfs 文件系统的磁盘配额

xfs_metadump: 将 xfs 文件系统的元数据 (metadata) 拷贝到一个文件中

xfs_mdrestore: 从一个文件中将元数据 (metadata) 恢复到 xfs 文件系统

xfs_growfs: 调整一个 xfs 文件系统大小(只能扩展)

原文链接:https://blog.csdn.net/gtnl2009/article/details/4311652

11.脚本查询某个挂载目录的使用进程

touch mount-info.sh
chmod +766 mount-info.sh

#! /bin/bash
read -p "请输入要查找的挂载目录(如:/dev/mapper/centos-home): " mountDir
echo ${mountDir}
for i in /proc/[0-9]* ;
do echo $i >> /tmp/mountinfo ;
grep -q ${mountDir} $i/mountinfo ;
echo $? >> /tmp/mountinfo ;
done

./mount-info.sh
grep -B 1  '^0$' /tmp/mountinfo

在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值