温馨提示×

VirtualBox Ubuntu虚拟机如何增加硬盘

小樊
40
2026-01-04 18:50:33
栏目: 云计算

在 VirtualBox 中为 Ubuntu 增加硬盘的两种常用方式

  • 方式一:给现有虚拟磁盘扩容(系统盘变大)
  • 方式二:新增一块虚拟硬盘(作为数据盘挂载)

方式一 扩容现有虚拟磁盘

  • 前置检查与准备
    • 关闭虚拟机(建议完全关机,而非挂起)。
    • 备份虚拟机目录(含 .vdi/.vmdk 与快照),以防操作失误导致数据不可恢复。
  • 在 VirtualBox 中扩容虚拟磁盘文件
    • 图形界面:选中虚拟机 → 设置 → 存储 → 选中 SATA 控制器下的虚拟硬盘 → 属性/磁盘操作/调整大小(不同版本入口略有差异)→ 输入更大的容量(如从 20GB 调到 40GB)。
    • 命令行示例(VBoxManage):
      • 查看磁盘 UUID:VBoxManage list hdds
      • 扩容(以 VDI 为例):VBoxManage modifyhd “<磁盘文件路径>” --resize <大小MB>
  • 启动 Ubuntu 识别新容量
    • 查看新容量:lsblk、sudo fdisk -l
    • 若使用 LVM:
      • 识别物理卷:sudo pvresize /dev/sdaX
      • 扩展逻辑卷:sudo lvextend -l +100%FREE /dev/mapper/-
      • 扩展文件系统:sudo resize2fs /dev/mapper/-(ext4)或 sudo xfs_growfs /mountpoint(XFS)
    • 若未使用 LVM(整盘一个分区,如 /dev/sda1):
      • 使用 GParted Live(推荐)或 parted 调整分区大小,将未分配空间合并到目标分区,然后扩展文件系统:
        • 安装:sudo apt update && sudo apt install gparted
        • 图形界面调整分区后,若为 ext4:sudo resize2fs /dev/sda1
  • 验证
    • df -h 或 lsblk 查看可用空间是否已增加。

方式二 新增一块虚拟硬盘并挂载为数据盘

  • 在 VirtualBox 中添加新硬盘
    • 关闭虚拟机 → 设置 → 存储 → SATA 控制器 → 添加虚拟硬盘 → 创建新磁盘(常用 VDI,可选择动态分配)→ 设定大小(如 50GB)。
  • 启动 Ubuntu 初始化并挂载
    • 识别新盘:lsblk、sudo fdisk -l(常见为 /dev/sdb
    • 分区(示例):
      • sudo fdisk /dev/sdb → n → p → 回车默认 → w
    • 格式化(ext4 示例):sudo mkfs.ext4 /dev/sdb1
    • 挂载:
      • 创建目录:sudo mkdir -p /data
      • 临时挂载:sudo mount /dev/sdb1 /data
    • 开机自动挂载(推荐用 UUID,避免设备名变化)
      • 获取 UUID:ls -l /dev/disk/by-uuid | grep sdb1
      • 备份 fstab:sudo cp /etc/fstab /etc/fstab.bak
      • 追加一行(示例):UUID=<你的UUID> /data ext4 defaults 0 2
      • 验证:sudo mount -a(无报错即正常)
  • 权限与验证
    • 按需设置目录权限:sudo chown -R $USER:$USER /data
    • 验证:df -h 查看 /data 容量与挂载状态。

常见问题与排错

  • 虚拟机设置里看不到新盘
    • 确认已关闭虚拟机再添加;SATA 端口是否冲突(同一端口只能挂一块盘);必要时更换端口号重试。
  • 扩容后系统内容量未变化
    • 未使用 LVM 时,需要借助 GParted/parted 调整分区边界后再扩展文件系统;仅“扩容虚拟磁盘文件”并不会自动改变分区与文件系统大小。
  • 开机因 fstab 错误无法进入
    • 进入救援/单用户模式,恢复备份:sudo cp /etc/fstab.bak /etc/fstab,再检查 UUID 与挂载点是否正确。
  • 设备名变化导致挂载失败
    • 使用 UUID 配置自动挂载,避免 /dev/sdX 顺序变化带来的问题。
  • 服务器版无图形界面如何扩容分区
    • 使用 parted 命令行调整分区,然后按文件系统类型执行 resize2fs(ext4)或 xfs_growfs(XFS)。

操作建议

  • 生产环境优先选择“新增硬盘”作为数据盘,减少对系统盘的风险;系统盘扩容前务必完整备份。
  • 使用 LVM 可以更灵活地在线扩容与迁移;未使用 LVM 时,扩容通常需要离线调整分区与文件系统。

0