VirtualBox虛擬機磁盤擴容


虛擬系統磁盤文件擴充

命令操做html

命令行運行VBoxManagemodifyhd擴容須要文件格式爲.vdi,如爲.vmdk,須要使用clonehd指定格式進行格式轉換,詳細可參考【1】。linux

VBoxManage modifyhd "centos-01.vdi" --resize 20480

GUI操做spring

關閉操做的虛擬機,在Oracle VM VirtualBox管理器主界面,管理->虛擬介質管理->屬性->大小->應用centos

修改分區

$ sudo fdisk /dev/sda     
p       #查看已分區數量
n       #新增長一個分區
p       #分區類型選擇爲主分區 
回車       #選擇分區號,使用默認,即爲新增分區
回車      #默認(起始扇區) 
回車      #默認(結束扇區) 
t       #修改分區類型 
回車       #選分區3 
8e       #修改成LVM(8e就是LVM)
w        #寫分區表並退出

重啓:bash

$ sudo reboot                #重啓

格式化分區(非必要,可用於轉換文件系統類型):app

這裏名稱「/dev/sda3」與新增分區一致。spring-boot

# 查看
$ sudo fdisk -l 
# 格式化,還有各類 mkfs.ext4,mkfs.xfs..,與須要擴容的文件系統應該一致
$ sudo mkfs.ext3 /dev/sda3

LVM更新

這裏名稱「/dev/sda3」與新增分區一致。ui

此虛擬機環境中須要擴容的文件系統爲/dev/mapper/centos-rootcentos7

$ lvm                          #進入lvm管理
$ lvm>pvcreate /dev/sda3             #這是初始化剛纔的分區3
$ lvm>vgdisplay						  #查看卷組(VG Name)
$ lvm>vgextend centos /dev/sda3       #將初始化過的分區加入到虛擬卷組centos
$ lvm>lvdisplay 					  #查看邏輯分區,發現/dev/centos/root是根分區
$ lvm>lvextend /dev/mapper/centos-root /dev/sda3   #此處將整個分區擴展到根分區上
$ lvm>pvdisplay 						#查看卷容量,這時你會看到一個很大的捲了
$ lvm>quit  							#退出

這一過程當中因不合適操做初始化了一個[unknown]物理卷,致使沒法繼續正確拓展邏輯分區,參考【3】使用如下命令後恢復,注意不該該使用vgremove(其功能爲刪除卷組)。.net

vgreduce --removemissing # 刪除卷組中丟失的物理卷,使卷組恢復正常狀態。

擴容文件系統

能夠經過df -T查看文件系統類型,以前已格式化爲ext3,執行如下命令完成擴容。

$ sudo resize2fs /dev/mapper/centos-root 		#擴容文件系統,對應本身的根分區
# 若是報錯或許由於擴容的是xfs文件系統,執行如下命令擴容文件系統
# $ sudo xfs_growfs /dev/centos/root 
$ sudo df -h 		#查看根分區容量已經更改
$ sudo reboot		#重啓完成最後的操做

參考資料

  1. virtualbox-centos擴容 - john_yang
  2. VirtualBox–Centos7磁盤擴容 - jiemin
  3. vgreduce命令 - LNMP
相關文章
相關標籤/搜索