CentOS 系统磁盘扩容并挂载到根目录(/)的详细步骤

在使用 CentOS 系统时,经常会遇到需要扩展磁盘空间的情况。例如,当虚拟机的磁盘空间不足时,可以通过增加磁盘容量并将其挂载到根目录(/)来解决。以下是一个完整的操作流程,详细介绍了如何将新增的 10G 磁盘空间挂载到根目录。

一、前置条件

确认磁盘扩容已完成

使用 lsblk 或 fdisk -l 命令确认磁盘的总大小是否已经增加。

例如,磁盘 /dev/sda 的大小从 50G 增加到 60G。

bash 复制代码
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   60G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   49G  0 part
  └─centos-root 253:0    0   49G  0 lvm  /
sr0              11:0    1  988M  0 rom

确认文件系统类型

使用 mount | grep / 或 blkid 命令确认根目录的文件系统类型(如 xfs 或 ext4)。

bash 复制代码
[root@localhost ~]# blkid
/dev/mapper/centos-root: UUID="49d122ab-313b-458c-a762-aeee22d6c8f1" TYPE="xfs"
/dev/sda2: UUID="Le2Fat-VHF2-BUOA-n2xn-oQZ8-HgvB-iBjP1j" TYPE="LVM2_member"
/dev/sda1: UUID="59b262f5-a465-4f34-b753-346e5697a5a8" TYPE="xfs"
/dev/sr0: UUID="2022-07-26-15-08-22-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"

二、操作步骤

步骤 1:调整分区大小

启动 parted 工具

bash 复制代码
parted /dev/sda

在 parted 的交互界面中执行以下操作

输入 print 查看当前分区表:

(parted) print

输出示例:

bash 复制代码
Number  Start   End     Size    Type     File system  Flags
 1      1049kB  1075MB  1074MB  primary  xfs          boot
 2      1075MB  53.7GB  52.6GB  primary               lvm

输入 resizepart 来调整分区 /dev/sda2 的大小:

(parted) resizepart 2 100%

当提示输入新的分区大小时,输入 100% 或具体的大小(例如 60G)。

输入 print 再次确认分区大小是否已更新:

(parted) print

输出示例:

bash 复制代码
Number  Start   End     Size    Type     File system  Flags
 1      1049kB  1075MB  1074MB  primary  xfs          boot
 2      1075MB  64.4GB  63.3GB  primary               lvm

输入 quit 退出 parted:

(parted) quit

重新扫描分区表

bash 复制代码
partprobe /dev/sda

确认分区大小是否已扩展

bash 复制代码
lsblk

步骤 2:扩展物理卷(PV)

将扩展后的分区重新识别为物理卷:

bash 复制代码
pvresize /dev/sda2

步骤 3:扩展逻辑卷(LV)

扩展逻辑卷 centos-root 的大小:

bash 复制代码
lvextend -l +100%FREE /dev/mapper/centos-root

步骤 4:扩展文件系统

扩展文件系统以使用新增的空间。根据文件系统类型选择以下命令:

如果文件系统是 xfs:

bash 复制代码
xfs_growfs /

如果文件系统是 ext4:

bash 复制代码
resize2fs /dev/mapper/centos-root

步骤 5:验证扩展结果

使用 df -h 命令验证根分区的大小是否已经扩展:

bash 复制代码
[root@localhost ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G  8.8M  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/centos-root   59G  1.8G   58G   3% /
/dev/sda1               1014M  152M  863M  15% /boot
tmpfs                    379M     0  379M   0% /run/user/0
相关推荐
敲上瘾17 分钟前
Redis持久化存储机制:从RDB到AOF再到混合持久化的配置与实践
linux·数据库·redis·缓存
小张同学a.23 分钟前
OpenStack 私有云实战 2—— Glance 镜像与 Nova 计算服务搭建
linux·运维·服务器·openstack
xiaoye-duck42 分钟前
《Linux网络编程》TCP 网络编程(下):基于 TCP 多线程通用字典服务 + 远程命令执行实战
linux·服务器·tcp/ip
陈让然1 小时前
VS Code C/C++ 插件 cpptools 内存占用异常
linux·运维
ltl9 小时前
QUIC 握手实现:Initial 到 1-RTT 的最小路径
linux
Android系统攻城狮11 小时前
Linux PipeWire深度解析之pw_init调用流程与实战(八十三)
linux·运维·服务器·音频进阶·pipewire音频进阶
M78佐菲12 小时前
Linux学习笔记:进程
linux·笔记·学习·算法
zbyyd13 小时前
Linux 进程管理详解:从概念到实战
linux·运维·服务器
薛定猫AI14 小时前
OpenAI Codex本地完整配置教程|(Windows/Mac/Linux全平台,修复鉴权报错)
linux·windows·macos