1. 程式人生 > >如何動態擴容VirtualBox根目錄儲存空間

如何動態擴容VirtualBox根目錄儲存空間

以Centos7為例 Low Disk Space on “Filesystem root”

緣由:
某一天打開了VirtualBox虛擬機器, 螢幕右上角有了如圖提示,磁碟空間不足:

磁碟空間不足的提示

於是檢視磁碟概況:df -h

看到這樣
如上圖我們看到,一個邏輯卷掛載的/根目錄,磁碟使用率已經100%了,必須要馬上擴充,LVM的存在,使得我們線上擴充磁碟空間變的非常簡單。

1. 從宿主機get多餘的磁碟空間

Virtual Box在頁面中似乎不能調整大小,我們可以定位到磁碟的vdi檔案,使用命令去擴充套件它。

  • 定位到vdi檔案:
    這裡寫圖片描述
  • 擴充套件到20G:
    這裡寫圖片描述
  • 進入虛擬機器中check
    這裡寫圖片描述
    簡單說明下,我們看到fdisk命令顯示磁碟大小已經變成了21G,sd2的End項,展示的sector明顯小於圖中標紅的40960000(20G),所以我們擴充的磁碟並沒有被分割槽,所以接下來我們應該給這部分新增加的磁碟分割槽,擴充套件掛載到根目錄的邏輯卷(LV)。

2 製作物理卷PV,並擴充卷組VG

這裡分多步完成:

  • 看下邏輯卷空間不足的緣由
    這裡寫圖片描述
    這裡看到,物理卷的最小儲存單元PE的可用數量已經變成0了,
  • 建立新分割槽
    這裡寫圖片描述
    這裡我省著用,先給新建一個5G的分割槽,然後wq儲存退出。
  • 建立PV
    這裡要reboot now,重啟電腦
    並且把磁碟給格式化了。mkfs.ext4 /dev/sda3
    千萬不要忘記。
    這裡寫圖片描述
  • 擴充套件VG和resize lv
    vgextend centos /dev/sda3
    這裡寫圖片描述
    lvextend -l +1249 /dev/mapper/centos-root
    此時df 命令發現還是沒有任何變化,原因是我們還沒有對它初始化呢。
    由於我們擴充套件的是根目錄,讓我們先看下,/它的檔案系統格式吧:
    cat /etc/fstab | grep centos-root

    xsf。
    所以合適的擴充套件命令就是:
    xfs_growfs /dev/mapper/centos-root 並不是 resize2fs
    至此,你敲下df -h 就看到我們的/可用空間擴大了5G,LVM的確很好用。