天天看點

建立和管理LVM

建立和管理LVM

要建立一個LVM系統,一般需要經過以下步驟:

  1、建立分區

  使用分區工具(如:fdisk等)建立LVM分區,方法和建立其他一般分區的方式是一樣的,差別僅僅是LVM的分區類型為8e。

  2、建立實體卷

  建立實體卷的指令為pvcreate,利用該指令将希望添加到卷組的所有分區或者磁盤建立為實體卷。将整個磁盤建立為實體卷的指令為:

  #pvcreate /dev/hdb

  将單個分區建立為實體卷的指令為:

  #pvcreate /dev/hda5

  3、建立卷組

  建立卷組的指令為vgcreate,将使用pvcreate建立的實體卷建立為一個完整的卷組:

  #vgcreate web_document/dev/hda5 /dev/hdb

  vgcreate指令第一個參數是指定該卷組的邏輯名:web_document。後面參數是指定希望添加到該卷組的所有分區和磁盤。vgcreate 在建立卷組web_document以外,還設定使用大小為4MB的PE(預設為4MB),這表示卷組上建立的所有邏輯卷都以4MB為增量機關來進行擴充 或縮減。由于核心原因,PE大小決定了邏輯卷的最大大小,4MB的PE決定了單個邏輯卷最大容量為256GB,若希望使用大于256G的邏輯卷則建立卷組 時指定更大的PE。PE大小範圍為8KB到512MB,并且必須總是2的倍數(使用-s指定,具體請參考manvgcreate)。

  4、激活卷組

  為了立即使用卷組而不是重新啟動系統,可以使用vgchange來激活卷組:

  #vgchange -ay web_document

  5、添加新的實體卷到卷組中

  當系統安裝了新的磁盤并建立了新的實體卷,而要将其添加到已有卷組時,就需要使用vgextend指令:

  #vgextend web_document /dev/hdc1

  這裡/dev/hdc1是新的實體卷。

  6、從卷組中删除一個實體卷

  要從一個卷組中删除一個實體卷,首先要确認要删除的實體卷沒有被任何邏輯卷正在使用,就要使用pvdisplay指令察看一個該實體卷資訊:

  如果某個實體卷正在被邏輯卷所使用,就需要将該實體卷的資料備份到其他地方,然後再删除。删除實體卷的指令為vgreduce:

  #vgreduce web_document /dev/hda1

  7、建立邏輯卷

  建立邏輯卷的指令為lvcreate:

   #lvcreate -L1500 -n www1 web_document

  該指令就在卷組web_document上建立名字為www1,大小為1500M的邏輯卷,并且裝置入口為 /dev/web_document/www1(web_document為卷組名,www1為邏輯卷名)。如果希望建立一個使用全部卷組的邏輯卷,則需 要首先察看該卷組的PE數,然後在建立邏輯卷時指定:

  #vgdisplay web_document | grep"TotalPE"

  TotalPE45230

  #lvcreate -l45230 web_document -n www1

  8、建立檔案系統

  筆者推薦使用reiserfs檔案系統,來替代ext2和ext3:

  建立了檔案系統以後,就可以加載并使用它:

  #mkdir/data/wwwroot

  #mount /dev/web_document/www1/data/wwwroot

  如果希望系統啟動時自動加載檔案系統,則還需要在/etc/fstab中添加内容:

  /dev/web_document/www1/data/wwwrootreiserfsdefaults12

  9、删除一個邏輯卷

  删除邏輯卷以前首先需要将其解除安裝,然後删除:

  #umount /dev/web_document/www1

  #lvremove /dev/web_document/www1

  lvremove--doyoureallywanttoremove"/dev/web_document/www1"?[y/n]:y

  lvremove--doingautomaticbackupofvolumegroup"web_document"

  lvremove--logicalvolume"/dev/web_document/www1"successfullyremoved

  10、擴充邏輯卷大小

  LVM提供了友善調整邏輯卷大小的能力,擴充邏輯卷大小的指令是lvextend:

  #lvextend -L12G /dev/web_document/www1

  lvextend--extendinglogicalvolume"/dev/web_document/www1"to12GB

  lvextend--doingautomaticbackupofvolumegroup"web_document"

  lvextend--logicalvolume"/dev/web_document/www1"successfullyextended

  上面的指令就實作将邏輯卷www1的大小擴招為12G。

  #lvextend -L +1G /dev/web_document/www1

  lvextend--extendinglogicalvolume"/dev/web_document/www1"to13GB

  上面的指令就實作将邏輯卷www1的大小增加1G。

  增加了邏輯卷的容量以後,就需要修改檔案系統大小以實作利用擴充的空間。筆者推薦使用reiserfs檔案系統來替代ext2或者ext3。是以這裡僅 僅讨論reiserfs的情況。Reiserfs檔案工具提供了檔案系統大小調整工具:resize_reiserfs。對于希望調整被加載的檔案系統大 小:

  #resize_reiserfs -f /dev/web_document/www1

  一般建議最好将檔案系統解除安裝,調整大小,然後再加載:

  #resize_reiserfs /dev/web_document/www1

  #mount-treiserfs /dev/web_document/www1/data/wwwroot

  對于使用ext2或ext3檔案系統的使用者可以考慮使用工具

  ext2resize。

  11、減少邏輯卷大小

  使用lvreduce即可實作對邏輯卷的容量,同樣需要首先将檔案系統解除安裝:

  #umount /data/wwwroot

繼續閱讀