刚开始磁盘分配的空间小了,结果用了一段时间系统老是提示磁盘容量剩余800M 了,由于这个虚拟机上好多环境的因素所以就想着扩充一下磁盘了,结果还是碰到了一些问题
安装的虚拟机上建立一个主分区 sda1
,挂载到了 /boot 下面(安装的时间长了,也不知道咋就挂载到这了,应该是默认的分区挂载方式)
还有一个扩展分区sda2
,在扩展分区有创建了一个逻辑分区sda5
,所以就将根目录挂载在了这个分区下面,下面主要就是扩展这个分区的磁盘容量
首先,要关闭Ubuntu
系统,在虚拟机中点击编辑该虚拟机,如下:
可以看到当前的磁盘容量为 80GB
,然后在虚拟机设置界面点击虚拟机扩展;(这个地方显示为灰色是因为存在快照,把快照删掉就可以扩展了)
然后在弹出的窗口选择要扩展到多大的容量,点击扩展之后就会提示我们进行分区,点击确定之后,就可以打开虚拟机了
打开虚拟机之后,有两种方式扩展容量:
第一种:使用分区工具
- 就是通过磁盘分区工具:gparted,安装命令:
sudo apt-get install gparted
- 安装之后就可以在全部应用中打开该软件了,打开之后可以看到当前的分区情况
最下面的就是刚才扩展了,但是还未分配的磁盘容量(我这个已经是分配过的,所以只剩下1M了)
- 右键点击分区,然后选择 “更改大小/移动” 的选项
此处有几个要注意的问题:首先分区之前最好先保存一个快照,以防止分配失败; 其次 数据备份,防止数据被擦除;最后就是如果是给逻辑分区扩展,要先将未分配的容量添加到扩展分区,然后再在逻辑分区扩展
-
接下来移动分区的容量就好了,我这已经扩展完成了,所以就没有剩余了
-
点击 "调整大小/移动" 确定,当所有分区都分配完成后点击最上面的勾确定分区即可
完成之后,在看磁盘分区结果,就可以看到容量已经分配完成了
第二种:通过命令的方式分区 (转载:https://jingyan.baidu.com/article/86fae34604bdd53c49121a26.html)
有时候当你发现你磁盘容量已经不足以安装分区工具时,你就可以通过命令的方式来分区(当然你也可以删除一些文件)
-
打开终端,输入
df -h
查看当前磁盘的应用情况 在进行下面的步骤之前最好创建一个快照,在分区失败就可以恢复到当前状态
-
输入
sudo fdisk /dev/sda
打开硬盘/dev/sda
,然后输入子命令p
,可以看到该磁盘的分区和挂载情况 -
然后我们输入
q
命令退出fdisk操作界面,输入命令:sudo swapoff /dev/sda5
来关闭交换分区 -
下面的操作就是风险操作了,使用d命令依次删除这3个分区。如下所示:
-
3个分区都删除完成后,我们来创建新分区。命令依次是: n->p->回车->+28G ,然后28G的根分区创建完毕,如下所示::
-
根分区创建完毕后,我们再来创建新的交换分区,首先创建扩展分区,命令依次是:n->e->回车->回车,将剩下的2G空间创建为了扩展分区
-
之后再创建交换分区,n->回车->回车->回车,逻辑分区创建完毕,这个时候逻辑分区格式是linux,还不是想要的swap分区,需要修改它的分区标志。输入命令t,然后选择分区5,输入分区编号82,就将/dev/sda5从linux格式分区修改为swap类型分区。如下面第二张图中所示。:
修改完成后,输入p命令查看一下分区信息,如下所示,和编辑之前唯一的区别就是根分区从18G变成了28G,其他没有任何变化。
确认无误后,输入命令a,然后输入分区编号1,将分区1设置为启动分区。如下面第二张图中所示,最后输入w命令保存配置。这个时候会提示Deivce or resource are busy,是因为原来的根目录还在挂载中,但是没有影响。
然后重启:sudo reboot
启动完成后,执行命令:sudo resize2fs /dev/sda1
,命令执行成功后,输入命令:df -h
查看硬盘挂载信息,这个时候看到的已经是28G的根目录了,没有任何错误,完美的将虚拟机硬盘扩大了。如下面第二张图中所示: