VirtualBox ubuntu16 硬盘扩容

 

VirtualBox安装了ubuntu16,默认的是8G内存,运行了hadoop以后不够用了,需要扩容。扩容还不那么智能,有点麻烦,主要有几个步骤,1先用virtualbox自带的工具进行扩容,2然后在进行分区的合并,3在分区配置文件中fstab进行配置修改。第一次的时候并没有做分区合并的动作,只是将新增的磁盘作为一个分区挂在到了一个目录下,后来发现要完美解决还是要在原分区上合并。第二次又进行分区合并,和配置文件调整。

 刚刚在VirtualBox中使用Ubuntu虚拟机中,出现了虚拟硬盘不够用的情况。 

有位兄弟第一步和我一样,参见他的http://blog.csdn.net/ouyang_peng/article/details/53261599

这里写图片描述
乖乖,查了一下磁盘空间,如下所示:

df -H

这里写图片描述

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

二、扩展虚拟硬盘容量

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

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

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

cd C:\Program Files\Oracle\VirtualBox

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

VBoxManage list hdds

整体命令如下所示:

Prettyprint代码  收藏代码
  1. <code style="display: block; padding: 0px; background: transparent; color: inherit; font-family: 'Source Code Pro', monospace; font-size: inherit; border-radius: 0px;" class="hljs tex has-numbering">Microsoft Windows [Version 6.1.7601]  
  2. Copyright (c) 2009 Microsoft Corporation.  All rights reserved.  
  3.   
  4. C:\Users\Administrator>cd C:\Program Files\Oracle\VirtualBox  
  5.   
  6. C:\Program Files\Oracle\VirtualBox>VBoxManage list hdds  
  7. UUID:           0bd9c696-1735-48ce-81cf-04e9f64c2418  
  8. Parent UUID:    base  
  9. State:          created  
  10. Type:           normal (base)  
  11. Location:       C:\Users\Administrator\VirtualBox VMs\Ubuntu\Ubuntu.vdi  
  12. Storage format: VDI  
  13. Capacity:       8192 MBytes  
  14. Encryption:     disabled  
  15.   
  16. UUID:           c76c5d26-1fd3-46f3-9cc0-f979b02a4411  
  17. Parent UUID:    base  
  18. State:          created  
  19. Type:           normal (base)  
  20. Location:       C:\Users\Administrator\VirtualBox VMs\Ubuntu\NewVirtualDisk1.vdi  
  21. Storage format: VDI  
  22. Capacity:       40960 MBytes  
  23. Encryption:     disabled</code>  

这里写图片描述

我们看到共有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 的磁盘进行扩容操作

Prettyprint代码  收藏代码
  1. <code style="display: block; padding: 0px; background: transparent; color: inherit; font-family: 'Source Code Pro', monospace; font-size: inherit; border-radius: 0px;" class="hljs mel has-numbering">C:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd 0bd9c696-1735-48ce-81cf-04e9f64c2418 --resize 51200  
  2. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%  
  3.   
  4. C:\Program Files\Oracle\VirtualBox></code>  

这里写图片描述

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

这里写图片描述

操作成功后该虚拟的硬盘即变成了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

这里写图片描述

 

 

第二步

先下载一个分区合并软件 gparted-live-0.28.1-1-amd64.iso 我是amd的cup,你们如果不是可以下载非amd的。

装载这个iso

 

启动先进入这个页面



 然后一路回车,然后进入软件的首页



 将除了第一个分区以外的所有分区都删除。然后点击apply,下面的图是没有点击apply前的截图。



 调整第一个磁盘的大小



 我一共20g空间,sda1由原来的8g我调整为19g,剩余1g给swap空间。



 下面是swap空间的分区,选择扩展分区。



在扩展分区下在分linux-swap分区



 

分好之后的结果



关机,把光盘卸载,再启动。启动会不正常,不能进入桌面,会进入emergency mode。没事,正常输入密码

 

 

需要输入root 密码。

ls -l /dev/disk/by-uuid/

 



 

蓝色部分是uuid 。要和 cat  /etc/fstab 中的uuid匹配。sda1是一样,sda5是不一样的。

 



vi /etc/fstab 把sda5的uuid 改成正确的。 并且删除sda5 后面多出来的参数。更改完以后的fstab如下:



 成功进入桌面



 

posted @ 2018-10-16 18:32  fire909090  阅读(2244)  评论(0编辑  收藏  举报