創建邏輯卷組:
一、將擴展的硬盤分區
新加一塊SCSI硬盤,需要將其分成三個區:代碼:
#fdisk ?/dev/sdb進入fdisk模式:Command (m for help):p //查看新硬盤的分區Command (m for help):n //創建新分區
可以用m命令來看fdisk命令的內部命令;n命令創建一個新分區;d命令刪除一個存在的分區;p命令顯示分區列表;t命令修改分區的類型ID號;l命令顯示分區ID號的列表;a命令指定啟動分區;w命令是將對分區表的修改存盤讓它發生作用。
Command action
e extended //輸入e為創建擴展分區p primary partition (1-4) //輸入p為創建主分區,這里我們選擇p
Partion number(1-4):1 //第一個擴展分區,按你需求可以最多分4個主分區First Cylinder(1-1014,default 1): 1 //第一個主分區起始的磁盤塊數Last cylindet or +siza or +sizeM or +sizeK: +1024MB //可以是以MB為單位的數字或者以
磁盤塊數,這里我們輸入+1024MB表示分區大小為1G。
這樣我們就創建完一個分區,如果要創建更多分區可以照上面的步驟繼續創建。
創建完后用w保存分區。代碼:
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
#partprobe?? //不用重啟可使以上操作生效。
這樣就分區完,我們還要進行格式化代碼:
#mkfs.ext3? /dev/sdb1 //如果有多個分區,則分區修改為sdb2這樣
=====================================================================
二、創建邏輯卷的步驟:1)通過pvcreate命令將linux分區處理成物理卷(PV);2)通過vgcreate命令將創建好的物理卷處理成卷組(Vg);3)通過lvcreate命令將卷組分成若干個邏輯卷(Lv);之后我們可以對邏輯卷進行格式化,掛載,刪除等操作,我們可以動態的調整邏輯卷的大小,并且該操作不會影響我們在邏輯卷(Lv)上的數據。
三、物理卷創建管理操作:1)pvcreate創建物理卷:(把普通Linux分區變成物理卷)
格式:pvcreate /dev/sdb{1,2,3...}
———————————————————————————————
[root@station1 ~]# [root@station1 ~]# pvcreate /dev/sdb{1,2,3,5,6,7}
Physical volume "/dev/sdb3" successfully created
Physical volume "/dev/sdb5" successfully created
Physical volume "/dev/sdb6" successfully created
Physical volume "/dev/sdb7" successfully created
————————————————————————————————
2)pvscan查看物理卷信息:會顯示所有物理卷的情況。格式:pvscan
————————————————————————————————
[root@station1 ~]# pvscan
PV /dev/sdb1? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
PV /dev/sdb2? ?? ?? ?? ?? ?? ?? ? lvm2 [964.84 MB]
PV /dev/sdb3? ?? ?? ?? ?? ?? ?? ? lvm2 [964.84 MB]
PV /dev/sdb5? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
PV /dev/sdb6? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
PV /dev/sdb7? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
Total: 6 [5.65 GB] / in use: 0 [0? ?] / in no VG: 6 [5.65 GB]
————————————————————————————————
3)pvdisplay查看各個物理卷的詳細參數:格式:pvdisplay??[/dev/sdb{1,2,3...}]不跟參數則顯示所有的物理卷信息
[root@station1 ~]# pvdisplay /dev/sdb1
"/dev/sdb1" is a new physical volume of "964.81 MB"
--- NEW Physical volume ---
PV Name? ?? ?? ?? ?? ?/dev/sdb1
VG Name
PV Size? ?? ?? ?? ?? ?964.81 MB
Allocatable? ?? ?? ???NO
PE Size (KByte)? ?? ? 0
Total PE? ?? ?? ?? ???0
Free PE? ?? ?? ?? ?? ?0
Allocated PE? ?? ?? ? 0
PV UUID? ?? ?? ?? ?? ?FKaYKk-d46E-KHCQ-WRnn-jUUE-Cd1d-mM8mPN
————————————————————————————————
4)pvremove刪除物理卷:當物理卷里的擴展快沒有被使用時可以刪除。格式:pvremove??/dev/sdb5
——————————————————————————————
[root@station1 ~]# pvscan
PV /dev/sdb7? ?VG vg1? ?? ?? ?? ? lvm2 [960.00 MB / 960.00 MB free]
PV /dev/sdb1? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb2? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb3? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb5? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
PV /dev/sdb6? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
Total: 6 [5.65 GB] / in use: 4 [3.76 GB] / in no VG: 2 [1.88 GB]
[root@station1 ~]# pvremove /dev/sdb5
Labels on physical volume "/dev/sdb5" successfully wiped
[root@station1 ~]# pvscan
PV /dev/sdb7? ?VG vg1? ?? ?? ?? ? lvm2 [960.00 MB / 960.00 MB free]
PV /dev/sdb1? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb2? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb3? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb6? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
Total: 5 [4.70 GB] / in use: 4 [3.76 GB] / in no VG: 1 [964.81 MB]
————————————————————————————————
四.卷組的創建管理:
1)vgcreate創建卷組:格式:vgcreate [-s??<8M|16M|...>] vg0 /dev/sdb{1,2,3...}
-s:指定擴展塊(PE)的大小,默認為4MB;(相當與磁盤上的簇,擴展邏輯卷的基本單位。后面的值可以是8M 16M 32M 64M .....最多65532個擴展塊。vg0:新創建的卷組的名字。/dev/sdb{1,2,3...}:需要的物理卷可以寫多個;————————————————————————————————
[root@station1 ~]# vgcreate vg0 /dev/sdb{1,2,3}
Volume group "vg0" successfully created
————————————————————————————————
2)vgdisplay查看各個卷組的詳細參數:格式:vgdisplay??/dev/vg0
————————————————————————————————
[root@station1 ~]# vgdisplay /dev/vg0
--- Volume group ---
VG Name? ?? ?? ?? ?? ?vg0
System ID
Format? ?? ?? ?? ?? ? lvm2
Metadata Areas? ?? ???3
Metadata Sequence No??1
VG Access? ?? ?? ?? ? read/write
VG Status? ?? ?? ?? ? resizable
Cur PV? ?? ?? ?? ?? ? 3
Act PV? ?? ?? ?? ?? ? 3
VG Size? ?? ?? ?? ?? ?2.82 GB
PE Size? ?? ?? ?? ?? ?4.00 MB? ?//擴展快大小?默認4MB
Total PE? ?? ?? ?? ???723
Alloc PE / Size? ?? ? 0 / 0
Free??PE / Size? ?? ? 723 / 2.82 GB
VG UUID? ?? ?? ?? ?? ?w4q8ET-UBLY-rHwg-2ZVv-NOw4-dd1e-1ABr2f
[root@station1 ~]# vgcreate -s 16M vg1 /dev/sdb{5,6,7}
Volume group "vg1" successfully created
[root@station1 ~]# vgdisplay /dev/vg1
--- Volume group ---
VG Name? ?? ?? ?? ?? ?vg1
System ID
Format? ?? ?? ?? ?? ? lvm2
Metadata Areas? ?? ???3
Metadata Sequence No??1
VG Access? ?? ?? ?? ? read/write
VG Status? ?? ?? ?? ? resizable
Cur PV? ?? ?? ?? ?? ? 3
Act PV? ?? ?? ?? ?? ? 3
VG Size? ?? ?? ?? ?? ?2.81 GB
PE Size? ?? ?? ?? ?? ?16.00 MB? ???//指定擴展塊大小為16MB
Total PE? ?? ?? ?? ???180
Alloc PE / Size? ?? ? 0 / 0
Free??PE / Size? ?? ? 180 / 2.81 GB
VG UUID? ?? ?? ?? ?? ?x97eh2-JYxW-4Ygh-5axx-TquS-0vxR-YdFyJ1
———————————————————————————————————
3)vgscan查看卷組的信息:格式:vgsacn
————————————————————————————————
[root@station1 ~]# vgscan
Found volume group "vg1" using metadata type lvm2
Found volume group "vg0" using metadata type lvm2
—————————————————————————————————
4)vgreduce縮小卷組:把物理卷重卷組中刪除。格式:vgreduce vg0 /dev/sdb3
——————————————————————————————————
[root@station1 ~]# vgreduce vg0 /dev/sdb3
Removed "/dev/sdb3" from volume group "vg0"
——————————————————————————————————
4)vgextend擴展卷組:把某個物理卷添加到卷組中。格式:vgextend vg0 /dev/sdb2將物理卷/dev/sdb2添加到vg0卷組——————————————————————————————————
[root@station1 ~]# vgextend vg0 /dev/sdb3
Volume group "vg0" successfully extended
——————————————————————————————————
5)vgremove刪除卷組:格式:vgremove /dev/vg1
——————————————————————————————————
[root@station1 ~]# pvscan
PV /dev/sdb7? ?VG vg1? ?lvm2 [960.00 MB / 960.00 MB free]
PV /dev/sdb5? ?VG vg1? ?lvm2 [960.00 MB / 960.00 MB free]
PV /dev/sdb6? ?VG vg1? ?lvm2 [960.00 MB / 960.00 MB free]
PV /dev/sdb1? ?VG vg0? ?lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb2? ?VG vg0? ?lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb3? ?VG vg0? ?lvm2 [964.00 MB / 964.00 MB free]
Total: 6 [5.64 GB] / in use: 6 [5.64 GB] / in no VG: 0 [0? ?]
[root@station1 ~]# vgremove /dev/vg1
Volume group "vg1" successfully removed
[root@station1 ~]# pvscan
PV /dev/sdb1? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb2? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb3? ?VG vg0? ?? ?? ?? ? lvm2 [964.00 MB / 964.00 MB free]
PV /dev/sdb5? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
PV /dev/sdb6? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
PV /dev/sdb7? ?? ?? ?? ?? ?? ?? ? lvm2 [964.81 MB]
Total: 6 [5.65 GB] / in use: 3 [2.82 GB] / in no VG: 3 [2.83 GB]
——————————————————————————————————
五、邏輯卷的創建及管理:
1)lvcreate創建邏輯卷命令:格式1:lvcreate -L 512M -n data vg0
-L 512M:設置邏輯卷的大小為512M。-n data:設置邏輯卷的名字為data;表示法:/dev/卷組名/data
vg0:設置是有那個卷組生成的邏輯卷。——————————————————————————————————
[root@station1 ~]# lvcreate -L 1000M -n data vg0
Logical volume "data" created
//創建一個容量為1000MB的邏輯卷data
——————————————————————————————————格式2:lvcreate -l 32 -n data vg0
-l 32:生成的邏輯卷使用32個擴展塊,邏輯卷大小=32*PE(默認4M)則為128M
-n data:邏輯卷的名字;vg0:設置是有那個卷組生成的邏輯卷。——————————————————————————————————
[root@station1 ~]# lvcreate -l 32 -n data128 vg0
Logical volume "data128" created
//創建一個32個擴展塊,容量為32*4=128MB的邏輯卷data128
——————————————————————————————————
2)格式化邏輯卷:mkfs.ext3 /dev/vg0/data
3)lvsacn查看邏輯卷的信息:????????????????????——————————————————————————————————
[root@station1 ~]# lvscan
ACTIVE? ?? ?? ?? ?'/dev/vg0/data' [1000.00 MB] inherit
——————————————————————————————————
4)lvdisplay查看邏輯卷的具體參數:——————————————————————————————————
[root@station1 ~]# lvdisplay /dev/vg0/data
--- Logical volume ---
LV Name? ?? ?? ?? ?? ? /dev/vg0/data
VG Name? ?? ?? ?? ?? ? vg0
LV UUID? ?? ?? ?? ?? ? 9Od1nq-cHmY-MlrL-vgXW-7Kam-pAfU-Qc8mal
LV Write Access? ?? ???read/write
LV Status? ?? ?? ?? ???available
# open? ?? ?? ?? ?? ???0
LV Size? ?? ?? ?? ?? ? 1000.00 MB
Current LE? ?? ?? ?? ? 250
Segments? ?? ?? ?? ?? ?2
Allocation? ?? ?? ?? ? inherit
Read ahead sectors? ???auto
- currently set to? ???256
Block device? ?? ?? ???253:0
——————————————————————————————————
3)增大邏輯卷大小:lvextend命令:增大邏輯卷大小格式:lvextend -L +100M /dev/vg0/data
——————————————————————————————————
[root@station1 ~]# lvextend -L +1000M /dev/vg0/data
Extending logical volume data to 1.95 GB
Logical volume data successfully resized
——————————————————————————————————
resize2fs /dev/vg0/data使上面增加的立即生效。——————————————————————————————————
[root@station1 ~]# resize2fs /dev/vg0/data
resize2fs 1.39 (29-May-2006)
Resizing the filesystem on /dev/vg0/data to 512000 (4k) blocks.
The filesystem on /dev/vg0/data is now 512000 blocks long.
[root@station1 ~]# lvscan
ACTIVE? ?? ?? ?? ?'/dev/vg0/data' [1.95 GB] inherit
——————————————————————————————————
4)減少邏輯卷大小:lvreduce命令:減少邏輯卷大小格式:Lvreduce -L -100M /dev/vg0/data
——————————————————————————————————
[root@station1 ~]# lvreduce -L -1000M /dev/vg0/data
WARNING: Reducing active logical volume to 1000.00 MB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce data? [y/n]: y
Reducing logical volume data to 1000.00 MB
Logical volume data successfully resized
——————————————————————————————————
resize2fs /dev/vg0/data使上面增加的立即生效。——————————————————————————————————
[root@station1 ~]# resize2fs /dev/vg0/data
resize2fs 1.39 (29-May-2006)
resize2fs: Bad magic number in super-block while trying to open /dev/vg0/data
Couldn't find valid filesystem superblock.
[root@station1 ~]# lvscan
ACTIVE? ?? ?? ?? ?'/dev/vg0/data' [1000.00 MB] inherit
ACTIVE? ?? ?? ?? ?'/dev/vg0/data128' [128.00 MB] inherit
——————————————————————————————————
5)lvremove刪除邏輯卷:格式:lvremove /dev/卷組名/邏輯卷名——————————————————————————————————
[root@station1 ~]# lvremove /dev/vg0/data128
Do you really want to remove active logical volume "data128"? [y/n]: y
Logical volume "data128" successfully removed
[root@station1 ~]# lvscan
ACTIVE? ?? ?? ?? ?'/dev/vg0/data' [1000.00 MB] inherit
——————————————————————————————————六、LVM的快照:1)快照的創建:Lvcreate -l 64 -s -n databackup /dev/vg0/data
-l 64:之前我們已經說過了這里是64個擴展塊,總容量=64*單擴展塊大小-n databackup:生成的快照的名字。/dev/vg0/data:源邏輯卷名字。————————————————————————————————————
[root@station1 ~]# lvscan
ACTIVE? ?? ?? ?? ?'/dev/vg0/data' [1000.00 MB] inherit
[root@station1 ~]# lvcreate -L 1000M -s -n databackup /dev/vg0/data
Logical volume "databackup" created
[root@station1 ~]# lvscan
ACTIVE? ?Original '/dev/vg0/data' [1000.00 MB] inherit
ACTIVE? ?Snapshot '/dev/vg0/databackup' [1000.00 MB] inherit
————————————————————————————————————
2)快照的刪除:lvremove /dev/vg0/databackup
————————————————————————————————————
[root@station1 ~]# lvremove /dev/vg0/databackup
Do you really want to remove active logical volume "databackup"? [y/n]: y
Logical volume "databackup" successfully removed
————————————————————————————————————
七、掛載將新分的卷掛載在需要掛載的目錄下:
格式:mount /dev//? /要掛載的點
Mkdir –p ?/tmp/123//建掛載點在/tmp/123下掛載
# Mount ?/dev/VolGroup0/data? /tmp/123
設置永久掛載:
# vi /etc/fstab
/dev/VolGroup0/data????? /tmp/123???? ext3defaults? 1? 2
Mout可以查看文件系統格式
八、總結:創建邏輯卷的順序:Linux分區---物理卷---卷組---邏輯卷刪除邏輯卷的順序:邏輯卷---卷組----物理卷---Linux分區
--查看卷組的命令,可以看到總磁盤空間,剩余空間
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name?????????????? VolGroup00
System ID
Format??????????????? lvm2
Metadata Areas??????? 1
Metadata Sequence No? 18
VG Access???????????? read/write
VG Status???????????? resizable
MAX LV??????????????? 0
Cur LV??????????????? 8
Open LV?????????????? 8
Max PV??????????????? 0
Cur PV??????????????? 1
Act PV??????????????? 1
VG Size?????????????? 837.09 GB
PE Size?????????????? 32.00 MB
Total PE????????????? 26787
Alloc PE / Size?????? 21417 / 669.28 GB
Free? PE / Size?????? 5370 / 167.81 GB
VG UUIDdM0jwy-1nGJ-FMY1-0I4P-E9BF-bFcb-MKk0cv
--檢查文件系統的磁盤空間占用情況
[root@localhost ~]# df -h /u04
文件系統容量已用可用?已用%掛載點
/dev/mapper/VolGroup00-u04
49G?? 43G3.3G? 93% /u04
--擴展邏輯卷大小
[root@localhost ~]# lvextend -L +50G /dev/mapper/VolGroup00-u04
Extending logical volume u04 to 99.03 GB
Logical volume u04 successfully resized
--重新定義ext2,ext3或者是ext4文件系統
[root@localhost ~]# resize2fs /dev/mapper/VolGroup00-u04
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/mapper/VolGroup00-u04 is mounted on /u04; on-line resizing required
Performing an on-line resize of /dev/mapper/VolGroup00-u04 to 25960448 (4k) blocks.
The filesystem on /dev/mapper/VolGroup00-u04 is now 25960448 blocks long.
[root@localhost ~]# df -h /u04
文件系統容量已用可用?已用%掛載點
/dev/mapper/VolGroup00-u04
98G?? 43G50G? 47% /u04