Linux下的VG
LVM(Logical Volumn Manager):
總體思路:分區(qū)成LVM格式(8e)---PV創(chuàng)建--VG創(chuàng)建---LV創(chuàng)建---格式化分區(qū)---MOUNT分區(qū)----e2fsadm調(diào)整LV大小
幾個關(guān)鍵詞:
PV (Physical Volumn);VG(Volumn Group); LV(LogicalVolumn);PE(Physical Extend物理塊 default 4M); LE(Logical Extend邏輯塊)PE:LE=1:1(Normal)
LVM的結(jié)構(gòu)簡圖如下: hda1 hdc1 sdc (PV:s 物理卷,,一般為分區(qū)或整個硬盤) \ | / \ | / diskvg (VG卷組由物理卷組成) / | \ / | \ usrlv rootlvvarlv (LV:s 邏輯卷在卷組上創(chuàng)建) | | | ext2 reiserfs xfs (建立在邏輯卷上的文件系統(tǒng))
PV: 實體分割區(qū)(Partition)/dev/had...
VG: 虛擬硬盤 /dev/vg_name
LV:虛擬分割區(qū) /dev/vg_name/lv_name
LVM創(chuàng)建過程:
如有三個硬盤hda2(3G)/hdb2(3G)/hdc2(3G)/hdd2(3G)+hda1(100M boot分區(qū))
1,、創(chuàng)建分區(qū):
fdisk/dev/hda(..hdb..hdc..hdd) -----p---n--t--8e---p--w--- reboot
(分出hda2/hdb2/hdc2/hdd2各3G的分區(qū),,分區(qū)格式為8e(lvm分區(qū))
2,、創(chuàng)建物理卷(PV):
pvcreate [-v]/dev/hda2 /dev/hdb2 /dev/hdc2 /dev/hdd2
***創(chuàng)建物理卷(PV)之前可以通過pvscan查看是否有物理卷及其信息,,如pvscan查看到現(xiàn)有PV(如/dev/hdb1,、/dev/hdc1)屬于VG(如VG0),,則可以通過
pvdisplay/dev/hdb1查看現(xiàn)有LVM的情況,。
****-v顯示創(chuàng)建的全部過程,,可以省略
3、創(chuàng)建卷組(VG):
vgcreate[-v] [-s 8M]vg01 /dev/hda2/dev/hdb2 /dev/hdc2 /dev/hdd2
***創(chuàng)建卷組((VG)之前可以通過vgdisplay查看現(xiàn)有卷組信息,;
*** -s創(chuàng)建的VG的PE大?。ㄈ?M),默認(rèn)省略不寫為4M,,必須是4的整數(shù)倍,;
***VG創(chuàng)建好后,自動就Active起來,,若沒有自動Active則可以通過 vgchange-a y vg01激活 VG,;也可以通過vgchange -a n vg01 關(guān)閉Actice 的VG為Deactive;
***只有對Deactive的VG才能進(jìn)行更改、刪除,;VG的重命名不需要Deactive,,如 vgrename old_vg_namenew_vg_name;
***vgremove刪除現(xiàn)有VG :vgremove vg_name;必須是Deactive VG.
***若在創(chuàng)建了LVM后發(fā)現(xiàn)硬盤空間不夠,則可以創(chuàng)建一個LVM分區(qū),,通過pvcreate激活此分區(qū),,再通過vgextend加入到現(xiàn)有VG中以擴(kuò)充空間。
pvcreate/dev/hde2 ; vgextend -v vg01/dev/hde2 將hde2加入到現(xiàn)有vg01中以擴(kuò)充空間,。
***若要刪除VG中的PV,,必須先確認(rèn)此PV沒有被VG所使用:如/dev/hdd2,先查看pvdisplay/dev/hdd2 中的PV Status,,若為Not Availiable則可以刪除,;
vgreduce -v vg01 /dev/hdd2
4、創(chuàng)建邏輯卷(LVM):
命令lvcreate的常用方法: lvcreate[options] -n邏輯卷名 卷組名 其中的常用可選項有: "-i Stripes:采用交錯(striped)方式創(chuàng)建LV,,其中Stripes指卷組中PV的數(shù)量,。 "-I Stripe_size:采用交錯方式時采用的塊大小(單位為KB),Stripe_size必須為2的指數(shù):2N ,,N=2,3...9,。 "-l LEs :指定LV的邏輯塊數(shù),。 "-L size:指定LV的大小,其后可以用K,、M,、G表示KB、MB,、GB,。 "-s :創(chuàng)建一已存在LV的snapshot卷。 "-n name :為LV指定名稱,。
創(chuàng)建普通LV:
lvcreate -L 5G -n lv01vg01 創(chuàng)建一個名為lv01的5G虛擬分區(qū)在虛擬硬盤vg01上 /dev/vg01/lv01
lvcreate -i 4 -I 8 -L 4G -nlv02 vg01 [-i是VG中組成PV的分區(qū)個數(shù),,-I 塊大小,-L LV的大小]
創(chuàng)建快照LV:
lvcreate -s -i 4 -I 16 -L 2G-n lv03_snapshot vg01
5,、創(chuàng)建文件系統(tǒng):
mke2fs -j /dev/vg01/lv01 (mkfs.ext3/dev/vg01/lv02; mkfs.ext3/dev/vg01/lv_snapshot)
6,、掛載:
mkdir /mnt/lv01 ;
mount -t ext3/dev/vg01/lv01 /mnt/lv01;
7、增,、減LV大?。?BR> umount /lv01;
e2fsadm -L+100M(-100M)/dev/vg01/lv01
****
總結(jié):
1) fdisk /dev/hd?--8e(/dev/hda2;/dev/hdb2;/dev/hdc2/;dev/hdd2)
2) pvcreate /dev/hda2 /dev/hdb2 /dev/hdc2
3)vgcreate vg01 /dev/hd2 /dev/hdb2 /dev/hdc2
4)lvcreate [-s] [-i pv_pation_count] [-I n*2k] -L 分區(qū)大小 [-nlv_name] vg01
5)mke2fs [-j] /vg01/lv_name
6) mkdir /mnt/mnt_point; mount-t ext3/dev/vg01/lv_name /mnt/mnt_point;
增加硬盤已擴(kuò)充分區(qū)容量:
1) pvcreate /dev/hdd2;
2) vgextend vg01 /dev/hdd2;
3)lvextend -L+100M /dev/vg01/lv_name;(在線擴(kuò)充分區(qū)大小) lvreduce -L -100M/dev/vg01/lv_name (在線擴(kuò)充分區(qū)大?。?BR> 若VG中有容量未分配可以通過以下方法增加(或減少)分區(qū)容量:
1) umount /mnt/mnt_point;
2) e2fsadm -L+100M /dev/vg01/lv_name
**以上擴(kuò)充必須是LV中最后一個LV(如/dev/vg01/lv01;/dev/vg01/lv02;/dev/vg01/lv03)
只能正常,、正確擴(kuò)充最后一個LV :lv03;若擴(kuò)充lv01,、lv02可能會有問題發(fā)生,。
|