Linux邏輯卷管理

2021-08-06 07:32:13 字數 2973 閱讀 4310

因為之前安裝系統的時候沒考慮使用邏輯卷管理(logical volume management,lvm),現在要用xen安裝多台虛擬機器導致分割槽混亂,所以現在才想到使用邏輯卷管理的好處。

本文基本上是參照ibm中國社群的邏輯卷管理這篇文章。

邏輯卷管理(lvm)指系統將物理卷管理抽象到更高的層次,常常會形成更簡單的管理模式。通過使用 lvm,所有物理磁碟和分割槽,無論它們的大小和分布方式如何,都被抽象為單一儲存(single storage)源。例如,在圖 1 所示的物理到邏輯對映布局中,最大的磁碟是 80gb 的,那麼使用者如何建立更大(比如 150gb)的檔案系統呢?

圖 1. 物理到邏輯的對映

lvm 可以將分割槽和磁碟聚合成乙個虛擬磁碟(virtual disk),從而用小的儲存空間組成乙個統一的大空間。這個虛擬磁碟在 lvm 術語中稱為捲組(volume group)

建立比最大的磁碟還大的檔案系統並不是這種高階儲存管理方法的惟一用途。還可以使用 lvm 完成以下任務:

用乙個 160gb 磁碟替換兩個 80gb 磁碟,而不需要讓系統離線,也不需要在磁碟之間手工轉移資料

當儲存空間超過所需的空間量時,從池中去除磁碟,從而縮小檔案系統

使用快照(snapshot)執行一致的備份

lvm2 是乙個新的使用者空間工具集,它為 linux 提供邏輯卷管理功能。它完全向後相容原來的 lvm 工具集。

lvm 的結構

lvm 被組織為三種元素:

linux lvm 組織為物理卷(pv)捲組(vg)邏輯卷(lv)。物理卷是物理磁碟或物理磁碟分割槽(比如 /dev/hda 或 /dev/hdb1)。捲組是物理卷的集合。捲組可以在邏輯上劃分成多個邏輯卷。圖 2 顯示乙個三個磁碟構成的布局。

圖 2. 物理到邏輯卷的對映

物理磁碟 0 上的所有四個分割槽(/dev/hda[1-4])以及完整的物理磁碟 1(/dev/hdb)和物理磁碟 2(/dev/hdd)作為物理卷新增到捲組 vg0 中。

捲組是實現 n-to-m 對映的關鍵(也就是,將 n 個 pv 看作 m 個 lv)。在將 pv 分配給捲組之後, 就可以建立任意大小的邏輯卷(只要不超過 vg 的大小)。在圖 2 的示例中,建立了乙個稱為 lv0 的捲組,並給其他 lv 留下了一些空間(這些空間也可以用來應付 lv0 以後的增長)。

lvm 中的邏輯卷就相當於物理磁碟分割槽;在實際使用中,它們就是物理磁碟分割槽。

在建立 lv 之後,可以使用任何檔案系統對它進行格式化並將它掛載在某個掛載點上,然後就可以開始使用它了。圖 3 顯示乙個經過格式化的邏輯卷 lv0 被掛載在 /var。

圖 3. 物理捲到檔案系統的對映

區段

為了實現 n-to-m 物理到邏輯卷對映,pv 和 vg 的基本塊必須具有相同的大小;這些基本塊稱為物理區段(pe)和邏輯區段(le)。儘管 n 個物理卷對映到 m 個邏輯卷,但是 pe 和 le 總是一對一對映的。

在使用 lvm2 時,對於每個 pv/lv 的最大區段數量並沒有限制。預設的區段大小是 4mb,對於大多數配置不需要修改這個設定,因為區段的大小並不影響 i/o 效能。但是,區段數量太多會降低 lvm 工具的效率,所以可以使用比較大的區段,從而降低區段數量。但是注意,在乙個 vg 中不能混用不同的區段大小,而且用 lvm 修改區段大小是一種不安全的操作,會破壞資料。所以建議在初始設定時選擇乙個區段大小,以後不再修改。

不同的區段大小意味著不同的 vg 粒度。例如,如果選擇的區段大小是 4gb,那麼只能以 4gb 的整數倍縮小或擴充套件 lv。

圖 4 用 pe 和 le 顯示與前乙個示例相同的布局(vg0 中的空閒空間也由空閒 le 組成,儘管圖中沒有顯示它們)。

圖 4. 物理到邏輯區段的對映

另外,請注意圖 4 中的區段分配策略。lvm2 並非總是連續分配 pe;細節參見關於 lvm 的 linux 手冊頁(見 參考資料 中的鏈結)。系統管理員可以設定不同的分配策略,但是一般不需要這麼做,因為預設策略(名為一般分配策略(normal allocation policy))使用符合常規的規則,比如不把並行的條帶放在同一物理卷上。

如果決定建立第二個 lv(lv1),那麼最終的 pe 布局可能像圖 5 這樣。

圖 5. 物理到邏輯區段的對映

裝置對映器

裝置對映器(也稱為 dm_mod)是乙個 linux 核心模組(也可以是內建的),最早出現在 2.6.9 核心中。它的作用是對裝置進行對映 —— lvm2 必須使用這個模組。

在大多數主流發行版中,裝置對映器會被預設安裝,常常會在引導時或者在安裝或啟用 lvm2/evms 包時自動裝載。如果沒有啟用這個模組,那麼對 dm_mod 執行 modprobe 命令,在發行版的文件中查詢在引導時啟用它的方法:modprobe dm_mod。

在建立 vg 和 lv 時, 可以給它們起乙個有意義的名稱(而不是像前面的示例那樣使用 vg0、lv0 和 lv1 等名稱)。裝置對映器的作用就是將這些名稱正確地對映到物理裝置。

linux 邏輯卷管理

pv 物理卷 被lv命令組過的物理分割槽 vg 物理捲組 被u組裝到一起的物理卷 pe 物理擴充套件 lvm裝置的最小單元,lvm是pe的整數倍 lvm 邏輯卷 直接使用的裝置,可以增大縮減並保持原有資料 lvm的建立 1.分割槽並指定標籤為8e lvm拉伸 1.針對xfs檔案系統 xfs檔案系統只...

Linux系統邏輯卷管理

lvm是 logical volume manager 邏輯卷管理 的簡寫,它由heinz mauelshagen在linux 2.4核心上實現。lvm將乙個或多個硬碟的分割槽在邏輯上集合,相當於乙個大硬碟來使用,當硬碟的空間不夠使用的時候,可以繼續將其它的硬碟的分割槽加入其中,這樣可以實現磁碟空間...

Linux 邏輯卷管理LVM

mbr劃分磁碟方式有兩種,四個主分割槽 三個主分割槽 乙個擴充套件分割槽 n個邏輯分割槽 但是這種分割槽方式有個極大的弊端,乙個磁碟在分割槽時,儲存大小是確定的。但是真正使用時,無法確定被儲存檔案的具體大小,而物理儲存空間是不可分割的整體,但靠物理磁碟是解決不了空間增長的問題。邏輯卷 lv,logi...