LVM (Logical Volume Management) 概念與基本語法

<ditaa round noedgesep>

   +--------+       +--------+
   |        |       |        |
   |  File  |       |  File  |
   | System |       | System |
   |    {s} |       |    {s} |
   +--------+       +--------+
       |                |
   +---+----+       +---+----+
   |        |       |        |
   | Logical|       | Logical|
   | Volume |       | Volume |
   |    {s} |       |    {s} |
   +----+---+       +----+---+
        |                |
        +-+            +-+
          |            |
       +--+------------+--+
       |                  |
       |   Volume Group   |
       |               {s}|
       +---------+--------+
                 |
      +----------+----------+
      |          |          |
 +----+---+ +----+---+ +----+---+
 |Physical| |Physical| |Physical|
 | Volume | | Volume | | Volume |
 |     {s}| |     {s}| |     {s}|
 +--------+ +--------+ +--------+
   

</ditaa>

  • Physical Volume (PV) : 就是實體區, 可以是一顆硬碟(Disk)或是一個分割區(Partition) 相關指令 : pvcreate, pvdisplay, pvs, pvchange, pvscan
  • Volume Group (VG) : 就是整合實體區(PV)與邏輯區(LV), 相關指令 : vgcreate, vgdisplay, vgs, vgextend, vgscan
  • Logical Volume(LV) : 就是邏輯區, 可以建立一個邏輯來格式化成檔案系統(File System), 相關指令 : lvcreate, lvdisplay, lvs, lvscan, lvresize, lvextend
  • 使用 LVM 的好處是讓檔案系統可以更有彈性的來調整, 不必然受限於實體的硬碟大小
  • 例如原有硬碟(或分割)大小空間滿了, 想要加一顆硬碟(或分割)後, 讓原本資料目錄的空間變大, 以下是在 KVM 虛擬環境先將一顆 10G 的 QEMU 虛擬硬碟加上 10G (變成 20G)後, 透過一系列的程序讓 / 空間多出 10G 的作法
    1. 將加上的 10G 空間, 使用 parted 指令建立新的分割區 參考指令 print , mkpart primary , set <編號> lvm 完成內容
    2. 用 pvcreate 命令將新產生的分割區 /dev/sda3 建立為 PV 執行語法
    3. 將剛產生的 PV /dev/sda3 以 vgextend 命令來加入現有的 VG - VolGroup 執行語法
    4. 使用 lvextend 或 lvresize 來加大現有 lv_root 的 LV 執行語法
    5. 透過 resize2fs 讓 LV 增加的空間實際生效 執行語法
  • tech/lvm_conecpt.txt
  • 上一次變更: 2018/06/24 18:51
  • Jonathan Tsai