1. 程式人生 > 其它 >linux lvm邏輯卷管理

linux lvm邏輯卷管理

目錄

linux lvm邏輯卷管理

LVM概述

LVM是Linux系統中對磁碟分割槽進行管理的一種邏輯機制,它是建立在硬碟和分割槽之上,檔案系統之下的一個邏輯層,在建立檔案系統時遮蔽了下層的磁碟分割槽佈局,能夠在保持現有資料不變的情況下動態調整磁碟容量,從而提高磁碟管理的靈活性。

需要注意的是,“/boot”分割槽不能基於LVM建立,必須獨立出來

pv(PhysicalVolume,物理卷)

物理卷是LVM機制的基本儲存裝置,通常對應一個普通分割槽或整個硬碟。建立物理卷時,會在分割槽或硬碟的頭部建立一個保留區塊,用於記錄LVM的屬性,並把儲存空間分割成預設大小為4MB的基本單元(Physical Extent,PE),從而構成物理卷,物理卷一般直接使用裝置檔名稱,如/dev/sdb1、/dev/sdb2、/dev/sdd等。

對用於轉換成物理卷的普通分割槽,建議先使用fdisk工具將分割槽型別的ID標記號改為“8e”。若是整塊硬碟,可以將所有磁碟空間劃分為一個主分割槽後再做相應調整。

VG(VolumeGroup,卷組)

由一個或多個物理卷組成一個整體,即稱為卷組,在卷組中可以動態地新增或移除物理卷,許多個物理卷可以分別組成不同的卷組,卷組的名稱由使用者自行定義。

LV(LogicalVolume,邏輯卷)

邏輯卷建立在卷組之上,與物理卷沒有直接關係。對於邏輯捲來說,每一個卷組就是一個整體,從這個整體中“切出”一小塊空間,作為使用者建立檔案系統的基礎,這一小塊空間就稱為邏輯卷。使用mkfs等工具在邏輯捲上建立檔案系統之後,就可以掛載到Linux系統中的目錄下使用。

通過上述對物理卷、卷組、邏輯卷的解釋可以看出,建立LVM分割槽管理機制的過程:首先將普通分割槽或整個硬碟建立為物理卷;接下來,將物理上比較分散的各物理卷的儲存空間組成一個邏輯整體,即卷組;最後,基於卷組這個整體,分割出不同的資料儲存空間,形成邏輯卷。邏輯卷才是終端使用者可以格式化並掛載使用的儲存單位。

LVM的管理命令

常用的LVM管理命令功能PV管理命令VG管理命令LV管理命令

  • Scan掃描
    pvscan vgscan lvscan

  • Create建立
    pvcreate vgcreate lvcreate

  • Display顯示
    pvdisplay vgdisplay lvdisplay

  • Remove移除
    pvremove vgremove lvremove

  • Extend擴充套件
    vgextend lvextend

  • Reduce減少
    vgreduce lvreduce

pvscan命令

pvscan用於掃描系統中的所有物理卷,並輸出相關資訊。

pvcreate命令

pvcreate用於將分割槽或整個硬碟轉換成物理卷,主要是新增LVM屬性資訊並劃分PE儲存單位。該命令需要使用硬碟或分割槽的裝置檔案作為引數(可以有多個)。例如,執行以下操作將把分割槽/dev/sdb1、/dev/sdb2轉換成物理卷。

pvdisplay命令

pvdisplay用於顯示物理卷的詳細資訊,需要使用指定的物理卷作為命令引數,預設時將顯示所有物理卷資訊。例如,執行以下“pvdisplay /dev/sdb1”命令可以檢視物理卷/dev/sdb1的詳細資訊。

pvremove命令

pvremove用於將物理卷還原成普通分割槽或磁碟,不再用於LVM體系,被移除的物理卷將無法被pvscan識別。執行“pvremove /dev/sdb1”命令可以將物理卷/dev/sdb1從LVM體系中移除。

pvremove /dev/sdb1

VG卷組管理

vgscan命令

vgscan命令用於掃描系統中已建立的LVM卷組及相關資訊。

vgscan

vgcreate命令

vgcreate用於將一個或多個物理卷建立為一個卷組,第一個命令引數用於設定新卷組的名稱,其後依次指定需要加入到該卷組的物理卷作為引數。例如,若要使用物理卷“/dev/sdb1、/dev/sdb2”建立名為abc的卷組,可以執行以下操作。

vgdisplay命令

vgdisplay用於顯示系統中各卷組的詳細資訊,需要使用指定卷組名作為命令引數(未指定卷組時將顯示所有卷組的資訊)。例如,若要檢視卷組abc的詳細資訊,可以執行以下操作。

vgremove命令

vgremove命令用於刪除指定的卷組,指定卷組名稱作為引數即可。刪除時應確保該卷組中沒有正在使用的邏輯卷。例如,若要刪除名為abc的LVM卷組,可以執行以下操作。

vgremove abc

#Volumegroup "abc" successfully removed

vgextend命令

vgextend用於擴展卷組的磁碟空間。當建立了新的物理卷,並需要將其新增到已有卷組中時,就可以使用vgextend命令。該命令的第一個引數為需要擴充套件容量的卷組名稱,其後為需要新增到該卷組中的各物理卷。例如,一下操作將重新建立卷組abc,包含物理卷“/dev/sdb1、/dev/sdb2”,然後通過vgextend命令將物理卷“/dev/sdc1”新增到卷組abc中。

LV邏輯卷管理

lvscan命令

lvscan命令用於掃描系統中已建立的邏輯卷及相關資訊。

lvscan

lvcreate命令

lvcreate用於從指定的卷組中分割空間,以建立新的邏輯卷。需要指定邏輯卷大小、名稱及所在的卷組名作為引數。命令格式如下

lvcreate  -L  容量大小  -n  邏輯卷名  卷組名

例如,執行以下操作將在卷組abc中建立一個新的邏輯卷,容量為10GB,名稱設為hlj。

lvdisplay命令

lvdisplay命令用於顯示邏輯卷的詳細資訊,需要指定邏輯卷的裝置檔案作為引數,也可以使用卷組名作為引數,以顯示該卷組中所有邏輯卷的資訊。例如,執行以下操作可以檢視前面建立的hlj邏輯卷的詳細資訊。

lvextend命令

lvextend用於動態擴充套件邏輯卷的空間,當目前使用的邏輯卷空間不足時,可以從所在卷組中分割額外的空間進行擴充套件。只要指定需增加的容量大小及邏輯卷檔案位置即可。前提條件是該卷組中還有尚未分配的磁碟空間,否則需要先擴展卷組容量。另外,調整邏輯卷的容量後,需要執行“resize2fs /dev/卷組名/邏輯卷名”命令以便Linux系統重新識別檔案系統的大小(resize2fs命令用於線上調整檔案系統大小),需要格式化之後才可以使用resize2fs命令

使用lvextend命令時,基本格式如下

lvextend  -L  +大小  /dev/卷組名/邏輯卷名

例如,以下操作可以為hlj邏輯卷擴充套件(增加)5GB大小的磁碟空間,並使用resize2fs

建立成功後的邏輯卷使用mkfs命令格式化之後就可以掛載到目錄下邊使用了。

參考文件

linux vgdisplay命令,Linux常用命令(八)LVM邏輯卷管理