《Linux系列》Linux云服务器,磁盘MBR分区扩容、ext4文件系统扩容

本文详细指导了如何在Linux云服务器上进行MBR分区和ext4文件系统的扩容,包括使用fdisk、lsblk检查分区状态,growpart工具扩容分区,以及resize2fs扩展ext4文件系统。特别提示了CentOS6的扩容注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux云服务器,磁盘MBR分区扩容、ext4文件系统扩容

1)参考阿里云扩容分区文档,整理MBR分区扩容

2)本文档适用于MBR分区(fdisk -lu查询)、ext系列文件系统(df -Th查询)

关闭相关服务,避免因为磁盘扩容导致数据错误

1.前言

确保Linux实例的操作系统是Alibaba Cloud Linux 2/3、Centos 6及以上、Debian 8及以上或者Ubuntu 14及以上版本。

注意:

2.控制台磁盘扩容

参考各云服务商扩容方法即可

3.分区扩容

3.1 fdisk

fdisk -lu:查看磁盘属性

重点查看红色标记处,如果Disk Label type的值未dos表示MBR分区,值为gpt表示GPT分区。

不同操作系统显示可能略有不同。如果没有Disk label type字段,可以通过System字段判断。System值为Linux表示MBR分区,值为GPT表示GPT分区。

较低版本的fdisk可能不能正常显示GPT分区表,可以通过gdisk -l /dev/db命令查看分区类型。

在这里插入图片描述

3.2 lsblk

lsblk:查看哪个分区待扩容

输入lsblk命令后,可以看到vdb总共有1000G磁盘空间,目前挂载到/data目录下有500G,说明还有500G分区未扩容。

在这里插入图片描述

3.3 扩容分区

  • 1.安装growpart

    显示growpart is /usr/bin/growpart表示growpart已存在

    [root@sdw2 ~]# type growpart || sudo yum install -y cloud-utils-growpart
    growpart is /usr/bin/growpart
    
  • 2.执行growpart

    LC_ALL=en_US.UTF-8是环境变量配hi,为了兼容中文操作系统的字符编码

    命令参数中/dev/vdb和1之间需要空格分隔,1是分区编号

    如果单盘有多个连续分区,仅能扩容最后一个分区。例如数据盘/dev/vdb有三个分区/dev/vdb1,/dev/vdb2,/dev/vdb3。扩容时,只能扩容最后一个分区/dev/vdb3,即执行growpart /dev/vdb 3命令即可完成数据盘的分区扩容。

    [root@sdw2 ~]# sudo LC_ALL=en_US.UTF-8 growpart /dev/vdb 1
    CHANGED: partition=1 start=2048 old: size=1048573952 end=1048576000 new: size=2097149919 end=2097151967
    

    显示CHANGED之后即成功

4.扩容文件系统

4.1 df

df -Th:获取需要扩容的文件系统的类型和挂载目录

Type值为文件系统类型,Mounted on值为分区的挂载目录。如下图所示:/dev/vdb1分区的文件系统类型为ext4,挂载目录为/data

如果Filesystem对应的数值不带数字(例如/dev/vdc),则为裸设备。

在这里插入图片描述

4.2 扩容文件系统

扩容命令因文件系统类型不同,根据上一步查询到的结果选择适合的命令。

在上一步中查询到/dev/vdb1的文件系统是ext4,挂载到/data目录下。

  • 1.扩容ext4文件系统

    [root@sdw2 ~]# sudo resize2fs /dev/vdb1
    resize2fs 1.42.9 (28-Dec-2013)
    Filesystem at /dev/vdb1 is mounted on /data; on-line resizing required
    old_desc_blocks = 63, new_desc_blocks = 125
    The filesystem on /dev/vdb1 is now 262143739 blocks long.
    
  • 2.检查扩容结果

    df -h查看磁盘信息,可以看到/data目录下磁盘空间已经扩展成功

    在这里插入图片描述

### 如何在Linux中进行ext4文件系统磁盘扩容操作 #### 准备工作 确保有足够的权限执行命令,通常需要`sudo`或以root身份登录。检查当前磁盘分区的状态,可以使用`lsblk`来获取磁盘布局的信息[^2]。 #### 控制台磁盘扩容 如果是在云环境中,则需先通过服务商提供的管理界面增加分配给实例的存储空间大小。这一步完成后,在操作系统内部还需要进一步的操作才能使新增的空间可用[^1]。 #### 分区表更新 对于MBR类型的磁盘,利用工具如`fdisk`重新定义分区边界,使之能够覆盖到新的未被使用的扇区上。具体来说就是删除旧有的目标分区再创建相同编号的新分区,注意保持起始位置不变而结束位置设为最大。 ```bash # 进入交互模式编辑指定设备上的分区表 $ sudo fdisk /dev/sdX # 将sdX替换为实际的目标硬盘标识符 ``` #### 文件系统调整 完成上述步骤之后,就可以着手处理文件系统本身了。这里假设要扩展示例中的第一个主分区(/dev/sdX1),并且该分区已经挂载了一个ext4格式化的文件系统: - 首先确认待修改对象确实是以ext4方式组织的数据结构; - 接下来运行`tune2fs -l /dev/sdX1 | grep 'Block count'`查看现有容量; - 使用`resize2fs`指令让底层物理介质的变化反映到高层抽象层面——即扩大文件系统的尺寸范围直至填满整个新设定好的区域为止[^3]。 ```bash # 调整ext4文件系统大小以适应更大的分区 $ sudo resize2fs /dev/sdX1 ``` #### LVM环境下的特殊考虑 当涉及到逻辑卷管理(LVM)架构时,流程会稍微有所不同。例如在CentOS 8这样的发行版里,除了常规手段外还需额外关注LV(Logic Volume)层面上的动作,比如扩展根分区对应的逻辑卷并随后在线调整其关联的ext4文件系统大小[^5]。 #### 后续验证 最后应当再次调用诸如`df -hT`之类的实用程序检验改动效果,并确保一切正常运作没有任何错误提示出现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DATA数据猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值