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如下:



 成功進入桌面



 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM