建立和管理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