腾讯云在线扩容数据盘

一、查询云硬盘使用的分区形式

注意:本文仅针对MBR分区

以 root 用户执行以下命令,查询云硬盘使用的分区形式。

Disk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0009ac89

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048   104857566    52427759+  83  Linux

Disk /dev/vdb: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

查看分区格式方法

  • 如果System的返回参数是Linux则说明是GPT,则说明需使用 GPT 分区形式。
  • 如果是Linux,则说明需使用 MBR 分区形式。
  • 如果结果所示无分区(仅展示 /dev/vdb),则说明需使用扩容文件系统形式,例如上图所示。

确认已有分区的文件系统类型

df -ihT

执行结果返回

Filesystem     Type     Inodes IUsed IFree IUse% Mounted on
/dev/vdb       ext4       6.3M   16K  6.3M    1% /data
  • 返回结果如果是ext4,则文件系统类型为 EXT。
  • 返回结果如果是xfs,则文件系统类型为 XFS。

二、根据不同的云硬盘类型进行在线扩容分区

2.1 安装 gdisk 工具。

根据实际情况执行命令,安装 gdisk 工具。

  • 若分区类型为 MBR,则请跳过此步骤。
  • 若分区类型为 GPT,则请对应云服务器操作系统类型,执行以下命令安装工具。
yum install gdisk -y

2.2 安装 growpart 工具

yum install -y cloud-utils-growpart

使用 growpart 工具扩容分区

执行以下命令,使用 growpart 工具扩容分区。
本文以扩容 /dev/vdb1 分区为例,命令中 /dev/vdb 与 1 间需使用空格分隔。我们可按需修改命令。

growpart /dev/vdb 1

三、根据不同的云硬盘类型进行在线扩容文件系统

3.1 扩容 EXT 文件系统

执行以下命令扩容 EXT 文件系统(以 /dev/vdb 为例)。

resize2fs /dev/vdb

执行结果如下图所示,则扩容成功。

# resize2fs /dev/vdb
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vdb is mounted on /data; on-line resizing required
old_desc_blocks = 7, new_desc_blocks = 13
The filesystem on /dev/vdb is now 26214400 blocks long.

执行以下命令,查看文件系统的硬盘空间情况,是否扩容成功

df -h

3.2 扩容 XFS 文件系统

执行以下命令扩容 XFS 文件系统(以 /dev/vdb 为例)。

xfs_growfs /dev/vdb

执行以下命令,查看文件系统的硬盘空间情况,是否扩容成功

df -h
<think>好的,我现在需要帮助用户解决如何扩容根分区的问题。用户之前遇到了根分区空间和inode耗尽的问题,导致ZooKeeper启动失败,现在他们想知道如何扩容根分区。首先,我要回想一下之前的对话内容,确保这次的回答和之前的建议一致,并且补充扩容的方法。 首先,用户已经清理了根分区,可能暂时解决了问题,但长期需要扩容扩容根分区通常涉及LVM,因为在之前的df输出中,根分区是/dev/mapper/centos-root,这通常意味着使用的是LVM结构。所以,我应该重点介绍LVM扩容的步骤。 接下来,我需要考虑用户可能对LVM不熟悉,所以步骤要详细,但也要分情况讨论,比如是物理卷、卷组还是逻辑卷的扩容。同时,用户可能是在虚拟机或物理机上,是否需要添加新磁盘?如果是云环境,可能需要先扩展云磁盘。 可能的步骤包括:检查当前磁盘和LVM结构,添加新磁盘或扩展现有磁盘,创建物理卷,扩展卷组,然后扩展逻辑卷和文件系统。另外,如果用户使用的是非LVM分区,可能需要使用resize2fs或xfs_growfs,但根据之前的输出,系统是CentOS,可能默认使用XFS,所以需要相应的命令。 还要注意不同文件系统的扩展方法不同,比如ext4和xfs的处理方式。另外,扩容前需要备份数据,避免操作失误导致数据丢失。此外,如果磁盘是虚拟化的,比如VMware或KVM,可能需要先扩展虚拟磁盘,再在系统内进行操作。 另外,用户可能没有使用LVM,这时候扩容会更复杂,可能需要使用工具如gparted,但这种情况在服务器上较少见,所以重点还是放在LVM上。 还需要提醒用户,如果根分区是系统盘,无法卸载,所以在线扩容是必须的,而某些文件系统支持在线扩容,比如XFS和ext4。需要确认当前文件系统类型,使用df -T查看。 此外,在扩展逻辑卷之后,需要调整文件系统大小,这里要给出具体的命令,比如lvextend和resize2fs/xfs_growfs的组合。 可能还需要考虑是否需要重启系统,或者是否可以在线完成所有步骤。例如,在添加新磁盘后,可能需要重新扫描SCSI总线,或者使用partprobe让系统识别新分区。 最后,总结步骤,给出注意事项,比如备份的重要性,确认当前分区结构,以及测试步骤是否可行。另外,如果用户的环境不同,比如使用的是非LVM或不同文件系统,可能需要不同的方法,但根据之前的上下文,优先LVM的情况。 现在,整理这些思路,组织成一个结构化的回答,分步骤说明,涵盖不同情况,并给出具体命令示例。同时,保持语言清晰,避免技术术语过于复杂,让用户能一步步跟随操作。</think>以下是针对LVM管理的根分区(如`/dev/mapper/centos-root`)的扩容步骤,适用于CentOS/RHEL系统: --- ### **1. 确认当前分区和LVM结构** ```bash # 查看磁盘和LVM布局 $ df -Th / # 确认根分区文件系统类型(如xfs/ext4) $ lsblk # 查看磁盘及分区结构 $ pvs; vgs; lvs # 检查物理卷(PV)、卷组(VG)、逻辑卷(LV)状态 ``` - 典型输出示例: ```text VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <8.0g 0 # VG名"centos"无剩余空间 ``` --- ### **2. 扩容场景及操作** #### **场景1:卷组(VG)有剩余空间** 若`vgs`显示卷组有剩余空间(`VFree > 0`): ```bash # 直接扩展逻辑卷(LV)和文件系统 $ sudo lvextend -L +5G /dev/centos/root # 扩展LV(+5G) $ sudo xfs_growfs / # XFS文件系统扩容 # 或 $ sudo resize2fs /dev/centos/root # ext4文件系统扩容 ``` #### **场景2:卷组空间不足,需添加新磁盘** 若需通过新磁盘扩容: 1. **添加新磁盘**(物理机插入硬盘,云平台扩容云盘) 2. **创建物理卷(PV)并加入卷组**: ```bash $ sudo fdisk -l # 确认新磁盘(如/dev/sdb) $ sudo pvcreate /dev/sdb # 创建PV $ sudo vgextend centos /dev/sdb # 将PV加入VG"centos" $ sudo lvextend -L +20G /dev/centos/root # 扩展LV $ sudo xfs_growfs / # 扩展文件系统 ``` #### **场景3:现有磁盘未分配空间** 若现有磁盘有未分配空间(如虚拟机扩展了磁盘): ```bash $ sudo fdisk /dev/sda # 创建新分区(如sda3) # 操作步骤:n → p → 回车 → 回车 → t → 8e(设为LVM类型)→ w $ sudo partprobe # 重载分区表 $ sudo pvcreate /dev/sda3 # 创建PV $ sudo vgextend centos /dev/sda3 $ sudo lvextend -L +10G /dev/centos/root $ sudo xfs_growfs / ``` --- ### **3. 扩容后验证** ```bash $ df -h / # 检查根分区容量 $ vgs # 确认卷组剩余空间 ``` --- ### **4. 特殊情况处理** #### **非LVM分区扩容(如直接使用/dev/sda1)** 需使用`growpart`和`resize2fs/xfs_growfs`(**风险较高,需谨慎**): ```bash $ sudo growpart /dev/sda 1 # 扩展分区(假设sda1为根分区) $ sudo resize2fs /dev/sda1 # ext4文件系统扩容 # 或 $ sudo xfs_growfs / # XFS文件系统 ``` #### **XFS vs ext4扩容区别** | 文件系统 | 扩展命令 | 是否支持缩小 | |----------|----------------------------|--------------| | XFS | `xfs_growfs 挂载点` | 否 | | ext4 | `resize2fs 设备路径` | 是(需卸载) | --- ### **5. 注意事项** 1. **备份数据**:扩容前建议对关键数据备份(如使用`tar`或`rsync`)。 2. **云环境适配**: - 阿里云/腾讯云需先控制台扩容云盘,再执行`growpart`和`resize2fs`。 - AWS需安装`cloud-utils-growpart`包。 3. **在线扩容**:XFS和ext4支持在线扩容(无需卸载文件系统)。 4. **LVM灵活性**:建议优先使用LVM管理分区,便于后续动态调整。 --- ### **总结** 扩容根分区的核心步骤: **添加空间 → 扩展物理卷/卷组 → 扩展逻辑卷 → 调整文件系统** 通过LVM可安全实现动态扩容,避免服务中断。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

杰哥的技术杂货铺

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

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

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

打赏作者

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

抵扣说明:

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

余额充值