温馨提示×

Linux虚拟机如何扩容

小樊
61
2025-08-21 10:16:18
栏目: 云计算

Linux虚拟机扩容需结合虚拟化平台和磁盘类型,以下是常见方法及步骤:

一、虚拟化平台扩容(必选步骤)

1. VMware平台

  • 关闭虚拟机,右键选择 编辑设置硬盘 → 调整磁盘容量(如从20G扩至50G)→ 保存。
  • 注意:若虚拟机有快照,需先删除快照。

2. VirtualBox平台

  • 关闭虚拟机,执行命令:
    VBoxManage modifyhd "虚拟磁盘路径" --resize 新大小(单位MB)
    例:VBoxManage modifyhd "E:\vm\centos.vdi" --resize 50000(扩至50G)。
  • 重启虚拟机后需手动分区。

3. KVM/QEMU平台

  • 关闭虚拟机,执行命令:
    qemu-img resize 虚拟磁盘路径 新大小(单位GB)
    例:qemu-img resize centos.qcow2 50G

二、操作系统内分区与文件系统扩容

1. 查看磁盘状态

  • 执行 lsblkfdisk -l,确认新扩容的磁盘空间(如新增分区 /dev/sda3)。

2. 分区操作(若需新建分区)

  • 使用 fdisk /dev/sda(或 parted /dev/sda):
    • 输入 n 创建新分区,选择主分区(p),默认起始扇区,结束扇区填默认(占用全部空闲空间)→ 输入 w 保存。
    • 注意:若为LVM分区,需将分区类型改为 8e(Linux LVM),输入 t 选择分区类型。
  • 若需调整已有分区大小,使用 parted /dev/sda resizepart 分区号 新大小

3. 扩展物理卷(LVM场景)

  • 若使用LVM,执行:
    pvcreate /dev/sda3(初始化新分区为物理卷)。
    vgextend 卷组名 /dev/sda3(将物理卷加入已有卷组,卷组名可通过 vgdisplay 查看)。

4. 扩展逻辑卷

  • 执行:
    lvextend -L +新增大小 /dev/卷组名/逻辑卷名
    例:lvextend -L +30G /dev/centos/root(扩至30G)。
    或直接使用 lvextend -l +100%FREE 占用所有空闲空间。

5. 扩展文件系统

  • ext4文件系统
    resize2fs /dev/卷组名/逻辑卷名
  • XFS文件系统
    xfs_growfs /dev/卷组名/逻辑卷名xfs_growfs /挂载点

三、验证扩容结果

  • 执行 df -h 查看磁盘使用情况,确认根分区或数据分区已更新。

注意事项

  • 操作前备份虚拟机数据,避免误操作导致数据丢失。
  • 部分步骤需重启虚拟机(如分区表修改),建议在非业务高峰期操作。
  • 若为云平台虚拟机,需通过云控制台操作磁盘扩容,步骤类似VMware。

0