2013/10/24

替 VMWare 採用 LVM 的系統擴充硬碟空間

前提:你的 HOST 硬碟要夠大

第一步:擴展虛擬機器的硬碟空間

  • 因為 LVM 只能使用 Primary Partition,一顆硬碟只能開四個,所以如果已經用掉四個 Primary Partition,請再增加一顆新的虛擬硬碟。

第二步:建立新的 LVM partition

  1. 執行 fdisk -l 查看目前的 partition 建立狀況
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1          13      104391   83  Linux
    /dev/sda2              14        1305    10377990   8e  Linux LVM
  2. 執行 fdisk /dev/sda (如果是第二顆硬碟要把 sda 改成 sdb,第三顆是 sdc,以此類推)
  3. 輸入  n   add a new partition
  4. 輸入 p primary partition
  5. 如果已經有三個 primary partition,就沒得選只能建立第四個,否則看是要建立第幾個 primary partition 輸入其數字,如本例要輸入 3
  6. 輸入 t change a partition's system id
  7. 輸入剛才建立好的 partition 編號,如本例是 3 
  8. 輸入 8e Linux LVM
  9. 輸入 w write table to disk and exit
  10. 執行 partprobe 免重開機立即套用 fdisk 的變更
  11. 執行 pvcreate /dev/sda3 建立實體 LVM (sda3 是剛才建立的 partition,請視情況改變)

第三步:把新的 LVM partition 加入現有 LVM Group

  1. 執行 lvs 檢視現有的 LVM 狀況
      LV       VG         Attr   LSize   Origin Snap%  Move Log Copy%
      LogVol00 VolGroup00 -wi-ao  10.37G
    留意 
    LogVol00 跟 VolGroup00
  2. 執行 vgextend VolGroup00 /dev/sda3 其中 VolGroup00 是要擴充的 LVM Group,sda3 是剛剛建立的 LVM partition
  3. 執行 vgdisplay 檢視 LVM Group 的狀況
    --- Volume group ---
    ... ... 中間省略 ... ...
    Free  PE / Size       110 / 10.00 GB
    留意 PE 的值 110 ,後面會用到
  4. 執行 lvresize -l +110 /dev/VolGroup00/LogVol00 其中 110 是剛才的 PE,VolGroup00 跟 LogVol00 用第一個指令查出來的
  5. 執行 resize2fs -p /dev/VolGroup00/LogVol00 變更 filesystem 的紀錄,變更後 df -h 才會看到新的容量。

第四步:開心使用新容量繼續剛剛因為容量不足而扼腕的工作

沒有留言: