VirtualBox如何扩展虚拟机Ubuntu的硬盘容量?

简介: 一、问题描述刚刚在VirtualBox中使用Ubuntu虚拟机中,出现了虚拟硬盘不够用的情况。 乖乖,查了一下磁盘空间,如下所示: df -H原来是上午安装Ubuntu虚拟机的时候,选择了动态分配存储,想当然的以为硬盘不够用的时候,它会自动扩展,没想到上限是默认的8G。

一、问题描述

刚刚在VirtualBox中使用Ubuntu虚拟机中,出现了虚拟硬盘不够用的情况。
这里写图片描述
乖乖,查了一下磁盘空间,如下所示:

df -H

这里写图片描述

原来是上午安装Ubuntu虚拟机的时候,选择了动态分配存储,想当然的以为硬盘不够用的时候,它会自动扩展,没想到上限是默认的8G。这就悲剧了,才用了一下子就占了96%的磁盘空间了,因此只能进行虚拟硬盘容量的扩容操作。

二、扩展虚拟硬盘容量

第1步、查看硬盘镜像文件

1、虚拟机关机,关机后如下所示,显示硬盘大小上限为8G。
这里写图片描述

2、启动CMD命令行,进入VirtualBox的安装目录。如

cd C:\Program Files\Oracle\VirtualBox

然后查看需要修改的虚拟硬盘:

VBoxManage list hdds

整体命令如下所示:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\Administrator>cd C:\Program Files\Oracle\VirtualBox

C:\Program Files\Oracle\VirtualBox>VBoxManage list hdds
UUID:           0bd9c696-1735-48ce-81cf-04e9f64c2418
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       C:\Users\Administrator\VirtualBox VMs\Ubuntu\Ubuntu.vdi
Storage format: VDI
Capacity:       8192 MBytes
Encryption:     disabled

UUID:           c76c5d26-1fd3-46f3-9cc0-f979b02a4411
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       C:\Users\Administrator\VirtualBox VMs\Ubuntu\NewVirtualDisk1.vdi
Storage format: VDI
Capacity:       40960 MBytes
Encryption:     disabled

这里写图片描述

我们看到共有2个虚拟磁盘,我们要修改图中第一个,它的空间大小为8G,UUID:0bd9c696-1735-48ce-81cf-04e9f64c2418

第2步、修改硬盘镜像文件

$ VBoxManage modifyhd YOUR_HARD_DISK.vdi –resize SIZE_IN_MB
其中YOUR_HARD_DISK.vdi用真实的虚拟机文件替代,SIZE_IN_MB则由调整后的空间大小替代。

例如使用命令 VBoxManage modifyhd 0bd9c696-1735-48ce-81cf-04e9f64c2418 –resize 51200 对 UUID为 0bd9c696-1735-48ce-81cf-04e9f64c2418 的磁盘进行扩容操作

C:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd 0bd9c696-1735-48ce-81cf-04e9f64c2418 --resize 51200
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

C:\Program Files\Oracle\VirtualBox>

这里写图片描述

再重新查看下虚拟硬盘的大小

这里写图片描述

操作成功后该虚拟的硬盘即变成了50G,但要注意了,此50G空间还没有分配.

第3步、分区

1、虚拟机开机
2、查看磁盘情况
这里写图片描述
纳尼,我不是已经扩容为50G了吗?怎么还是提醒我空间不够用?原来虽然已经扩大了磁盘,但是由于还没有经过分区,指定文件系统[格式化],所以linux操作系统无法识别(其实就相当于你插入了一块新硬盘,但是你并没有对其进行分区、格式化是一个道理)。

这里写图片描述

3、开始分区
输入命令$sudo fdisk /dev/sda
然后按m查看帮助文档如下所示:
这里写图片描述

如上图所示,按n命令的话就增加一个分区,如下所示
这里写图片描述
如上图所示:
首先输入命令:n(添加新分区)之后回车:
接着输入命令:p
剩下步骤全按回车默认,
最后输入命令w保存分区信息。

再查看下分区信息:fdisk -l
这里写图片描述
发现多了一个分区 /dev/sda4。(之前重复做了一次分区操作,划了一个分区/dev/sda3)
然后重启Ubuntu虚拟机。

4、格式化分区
格式化刚才划好的分区/dev/sda4

sudo mkfs -t ext4 /dev/sda4

这里写图片描述

5、挂载分区
创建目录 /home/ouyangpeng/sda4

sudo mkdir sda4

将分区 /dev/sda4 挂载到 /home/ouyangpeng/sda4

sudo mount /dev/sda4 /home/ouyangpeng/sda4

这里写图片描述

6、开机自动挂载,则修改/etc/fstab文件,在这个文件里面添加一行:
使用vim命令编辑/etc/fstab文件

sudo vim /etc/fstab

增加如下一行代码

/dev/sda4 /home/ouyangpeng/sda4/ ext4 defaults 0 1

这里写图片描述

至此,容量扩展完成了。

再次查看下刚刚挂载好的分区

df -H

这里写图片描述


参考文档:

http://blog.csdn.net/ganshuyu/article/details/17954733

http://www.cnblogs.com/jyzhao/p/4778657.html

http://www.2cto.com/os/201406/309339.html

作者:欧阳鹏 欢迎转载,与人分享是进步的源泉!
转载请保留原文地址:
http://blog.csdn.net/ouyang_peng/article/details/53261599

这里写图片描述

相关文章
|
2月前
|
Ubuntu Shell 网络安全
安装了ubuntu虚拟机后发现shell无法连接 ubuntu开启ssh连接
【8月更文挑战第23天】安装了ubuntu虚拟机后发现shell无法连接
160 6
|
3天前
|
Ubuntu 编译器 开发工具
香橙派5Pro+虚拟机Ubuntu18.04交叉编译+Opencv4.7
香橙派5Pro+虚拟机Ubuntu18.04交叉编译+Opencv4.7
|
1月前
|
Ubuntu Oracle 关系型数据库
Oracle VM VirtualBox之Ubuntu 22.04LTS双网卡网络模式配置
这篇文章是关于如何在Oracle VM VirtualBox中配置Ubuntu 22.04LTS虚拟机双网卡网络模式的详细指南,包括VirtualBox网络概述、双网卡网络模式的配置步骤以及Ubuntu系统网络配置。
71 3
|
2月前
|
机器学习/深度学习 Ubuntu Linux
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
|
2月前
|
Ubuntu
【ubuntu】【问题记录】vbox虚拟机无权限访问共享目录
【ubuntu】【问题记录】vbox虚拟机无权限访问共享目录
25 0
|
2月前
|
Ubuntu
【ubuntu系统】在虚拟机内安装Ubuntu
【ubuntu系统】在虚拟机内安装Ubuntu
44 0
|
1天前
|
消息中间件 监控 Ubuntu
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
13 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
|
2天前
|
Ubuntu Docker 容器
本地wsl的Ubuntu安装docker,不使用docker桌面版
本文提供了在WSL的Ubuntu环境中安装Docker引擎的步骤,包括安装引擎、配置iptables以及启动Docker服务。
22 2