Centos系统将/dev/centos/home存储空间转移到/dev/centos/root

文章目录

  • 前言
  • 操作步骤
    • [1. 备份数据](#1. 备份数据)
    • [2. 卸载/home分区](#2. 卸载/home分区)
    • [3. 调整逻辑卷](#3. 调整逻辑卷)
    • [4. 调整文件系统](#4. 调整文件系统)
    • 补充

前言

在CentOS系统(以及许多其他Linux发行版)中,默认情况下/home分区有较大空间而/root(实际上是根分区/)较小,这种设计有官方处于实用和安全方面的考虑,但是对于个人开发者而言,我们自己用的主机大部分都是root账号,/home下的空间基本不会用到,如下图,笔者的机器/home下完全没有使用,但是/home目录所属磁盘分区分配了180多G空间,比较浪费,故而我们尝试把这块空间挪到常用的/dev/centos/root下。

操作步骤

1. 备份数据

所有磁盘类操作,建议都先备份数据,防止出现问题时可以恢复数据。

针对本次问题,我们需要手动备份/home下的数据,可以直接打包/home目录,放入/tmp或其他空间暂存,代码示例如下:

shell 复制代码
tar zcvf /tmp/home.tar /home

2. 卸载/home分区

使用umount命令卸载/home分区

shell 复制代码
umount /dev/centos/home

3. 调整逻辑卷

使用LVM(逻辑卷管理)的工具减少/home的大小,并增加/root的大小。

您可以使用lvreduce来减少/home的大小,然后使用lvextend来增加/root的大小,如果你完全不再需要/home空间,可以使用lvremove命令移除/home目录所属分区。

  • 减少/home的大小
shell 复制代码
# 方法1:减少特定大小空间,比如100G
lvreduce -L -100G /dev/centos/home

# 方法2:完全移除分区(笔者采用该方式)
lvremove /dev/centos/home

命令行会弹出交互式提示,是否确认操作,选择y

  • 而后将腾出来的空间,加到/dev/centos/root分区
shell 复制代码
# 示例:为/dev/centos/root分区增加180G
lvextend -L +180G /dev/centos/root

此时,实际还有一些零碎的空间,我们可以继续尝试增加,根据提示调整大小(前提是不再需要/home目录,如果有需要,可以留一小部分空间重新建立/dev/centos/home)

OK,至此基本没有冗余空间了。

4. 调整文件系统

在调整了逻辑卷的大小之后,需要调整文件系统以匹配新的分区大小。对于ext4文件系统,可以使用xfs_growfs 命令。

shell 复制代码
xfs_growfs /dev/centos/root

至此,笔者的需求已满足,/dev/centos/home分区磁盘空间已转移到/dev/centos/root分区下。

补充

如果你需要/home目录,只是需要空间小一点,可以通过调整逻辑卷和文件系统来实现

shell 复制代码
# 创建逻辑卷,如果上述步骤3采用的是lvreduce,则无需执行该步骤
lvcreate -L 40G -n /dev/centos/home 

# 创建文件系统
mkfs.xfs /dev/centos/home

# 挂载home
mount /dev/centos/home

# 恢复/home目录文件
tar zxvf /tmp/home.tar -C /home/

【星猿科技】:在这里我们共同探索科技新趋势,分享积累的点滴,从人工智能到高性能计算,我们追求技术的进步,同时珍视分享的力量。欢迎关注我们,在科技与影视的精彩世界中一起遨游,发现更多未知!

相关推荐
Jason_zhao_MR1 小时前
米尔RK3506核心板SDK重磅升级,解锁三核A7实时控制新架构
linux·嵌入式硬件·物联网·架构·嵌入式·嵌入式实时数据库
网硕互联的小客服1 小时前
遇到网站500内部服务器错误如何处理?如何预防这样的问题发生?
运维·服务器·安全
叮咚侠1 小时前
Ubuntu 24.04.3 LTS 中 vdb 的 UUID 永久挂载没有显示的磁盘的操作步骤
linux·运维·ubuntu·挂载磁盘
GAOJ_K1 小时前
滚柱导轨中的密封件如何判断是否需更换?
运维·人工智能·科技·自动化·制造
.小墨迹2 小时前
C++学习之std::move 的用法与优缺点分析
linux·开发语言·c++·学习·算法·ubuntu
风华同学2 小时前
【Linux驱动篇】LED驱动开发实验
linux·驱动开发·ubuntu
李斯维2 小时前
安装 WSL 最好的方式
linux·windows
skyyx20022 小时前
写给网工新手:子网掩码基本概念和一些计算方法
运维·网络
张小九992 小时前
fpocket安装和使用教程
linux·机器学习·github
元气满满-樱2 小时前
Rewrite重写
linux·nginx