LVM基本應用,擴展及縮減應用
- 什麼是LVM
1.LVM(Logical Volume Manager)邏輯卷管理是在linux2.4內核以上實現的磁盤管理技術。它是linux環境下對磁盤分區進行管理的一種機制。現在不僅僅是在linux系統上可以使用LVM這種磁盤管理機制,對於其他的類UNIX操作系統,以及windows操作系統都有類似與LVM這種磁盤管理軟件
2.LVM的工作原理其實很簡單,它就是將底層的物理磁盤抽象的封裝起來,然後以邏輯卷的方式呈現給上層應用。在傳統的磁盤管理機制中,我們上層應用是直接訪問文件系統,從而對底層的物理硬盤進行讀取,而在LVM中,其通過對底層的硬盤進行封裝,當我們對底層的物理硬盤進行操作時,其不再針對對分區進行操作,而是通過一個叫邏輯卷的東西來對其進行底層的磁盤管理操作。比如說我增加一個物理硬盤,這個時候上層服務是感覺不到的,因爲呈現給上層服務是以邏輯卷的方式。 - LVM的優缺點
1.優點:
①.可以在系統運行的狀態下動態的擴展文件系統的大小。
②.文件系統可以跨多個磁盤,因此文件系統大小不會受物理磁盤的限制。
③.可以增加新的磁盤到LVM的存儲池中。
2.缺點:②.當卷組中的一個磁盤損壞時,整個卷組都會受到影響。
①.在從卷組中移除一個磁盤的時候必須使用reducevg命令(這個命令要求root權限,並且不允許在快照卷組中使用)。
②.當卷組中的一個磁盤損壞時,整個卷組都會受到影響。
③.因爲加入了額外的操作,存貯性能受到影響。 - LVM的名詞解釋
如上圖所示:
1.PV(物理卷)
PV物理卷就是指硬盤分區或從邏輯上與磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區,磁盤等)比較,卻包含有與LVM相關的管理參數
2.VG(卷組)
LVM卷組類似於非LVM系統中的物理硬盤,其由物理卷組成,可以在卷組上創建一個或多個"LVM分區"(邏輯卷),LVM卷組由一個或多個物理卷組成。
3,LV(邏輯卷)
LVM的邏輯卷類似於非LVM系統中的硬盤分區,在邏輯卷之上可以建立文件系統(比如/home,或者/usr等)
4.PE(Physical Extend):物理區域,PV中可以用於分配的最小存儲單元,可以在創建PV的時候制定(默認爲4MB),如1M, 2M, 4M, 8M, 32M, 64M…組成同一VG中所有PV的PE大小應該相同。
VG,PE,LV之間的關係如下: - LVM的實現
1.首先先創建PV:
與PV相關的管理的有:pvcreate,pvdisplay,pvs,pvscan,pvremove,pvmove
pvcreate:將實體partition創建成爲PV;
pvscan:搜尋目前系統裏面任何具有PV的磁碟;
pvdisplay:顯示出目前系統上面的PV標誌
pvremove:將PV屬性移除,讓該partition不具有PV屬性.
(1):先準備塊設備,
(2):然後創建pv:pvcreate [-f] /dev/sda{4,5,6}
(3):查看pv信息:pvdisplay /dev/sda{4,5,6}
2.創建VG:
與VG相關的一些管理命令:
vgcreate:就是主要創建VG的命令,
vgscan:搜尋系統上面是否有VG存在
vgdisplay:顯示系統上面的VG的狀態
vgextend:在VG內添加額外的PV
vgreduce:在VG內移除PV
vgchange:配置VG是否啓動(active)
vgremove:刪除一個VG
(1)新增一個vg,並指明其包含哪個或哪些pv實現:
vgcreate VGNAME /dev/PV1 ...
-s|--physicalextentsize Size[m|UNIT]
-t|--test
-v|--verbose ...
(2)此時如果想要增加VG的容量:
vgextend VG_NAME /dev/sda#
vgdisplay
3.創建LV:
與LV相關的一些管理命令有:
lvcreate:創建lv
lvscan:查詢系統上的lv
lvdisplay:顯示系統上的LV的狀態
lvextend:在LV裏面添加容量
lvreduce:在LV裏面減少容量
lvremove:刪除一個LV
lvresize:對LV進行容量大小的調整
lvcreate的用法:
lvcreate -L|--size Size[m|UNIT] -L|--size Size[m|UNIT]
4.文件系統階段:
要想真正的使用lvm就必須對lv進行格式化掛載
(1)mkfs -t ext3 /dev/NAME_VG/NAME_LV
(2)mkdir /mnt/lvm
(3)mount /dev/NAME_VG/NAME_LV /mnt/lvm - 擴容LV
1.用fdisk配置新的具有system ID的partiton
2.利用pvcreate創建PV
3.利用vgextend將PV加入VG_NAME
4.利用lvresize將新的加入的PV內的PE加入VG_NAME中
5.透過resize2fs將文件系統的容量重新添加 - 縮減LV
1.先卸載已經掛載的LV
2.強制進行磁盤檢測:e2fsck -f /dev/VG_NAME/LV_NAME
3.resizefs /dev/VG_NAME/LV_NAME 500M(邏輯邊界縮減)
4.lvreduce -L 500M /dev/VG_NAME/LV_NAME
5.mount /dev/NAME_VG/NAME_LV /mnt/lvm