LVM邏輯卷管理

2021-09-30 13:56:16 字數 3305 閱讀 8413

一、簡介

lvm是邏輯盤卷管理(logical volume manager)的簡稱,它是linux環境下對磁碟分割槽進行管理的一種機制,lvm是建立在硬碟和分割槽之上的乙個邏輯層,來提高磁碟分割槽管理的靈活性。

lvm的工作原理其實很簡單,它就是通過將底層的物理硬碟抽象的封裝起來,然後以邏輯卷的方式呈現給上層應用。在傳統的磁碟管理機制中,我們的上層應用是直接訪問檔案系統,從而對底層的物理硬碟進行讀取,而在lvm中,其通過對底層的硬碟進行封裝,當我們對底層的物理硬碟進行操作時,其不再是針對於分割槽進行操作,而是通過乙個叫做邏輯卷的東西來對其進行底層的磁碟管理操作。比如說我增加乙個物理硬碟,這個時候上層的服務是感覺不到的,因為呈現給上層服務的是以邏輯卷的方式。

lvm最大的特點就是可以對磁碟進行動態管理。因為邏輯卷的大小是可以動態調整的,而且不會丟失現有的資料。如果我們新增加了硬碟,其也不會改變現有上層的邏輯卷。作為乙個動態磁碟管理機制,邏輯卷技術大大提高了磁碟管理的靈活性。

基本的邏輯卷管理概念:

pv(physical volume)- 物理卷

物理卷在邏輯卷管理中處於最底層,它可以是實際物理硬碟上的分割槽,也可以是整個物理硬碟,也可以是raid裝置。

vg(volumne group)- 捲組

捲組建立在物理卷之上,乙個卷組中至少要包括乙個物理卷,在捲組建立之後可動態新增物理捲到卷組中。乙個邏輯卷管理系統工程中可以只有乙個捲組,也可以擁有多個捲組。

lv(logical volume)- 邏輯卷

邏輯卷建立在捲組之上,卷組中的未分配空間可以用於建立新的邏輯卷,邏輯卷建立後可以動態地擴充套件和縮小空間。系統中的多個邏輯卷可以屬於同乙個捲組,也可以屬於不同的多個捲組。

關係圖如下:

pe(physical extent)- 物理塊

lvm 預設使用4mb的pe區塊,而lvm的lv最多僅能含有65534個pe (lvm1 的格式),因此預設的lvm的lv最大容量為4m*65534/(1024m/g)=256g。pe是整個lvm 最小的儲存區塊,也就是說,其實我們的資料都是由寫入pe 來處理的。簡單的說,這個pe 就有點像檔案系統裡面的block 大小。所以調整pe 會影響到lvm 的最大容量!

二: 實驗要求:建立乙個名字為database的卷 ,屬於datastore的組,此卷組包含50個pe,乙個pe大小為16m,此處若分800m出來則會少乙個pe,所以再分割槽應該分816m左右,自動掛到/mnt/wshare,格式化為ext4

實驗步驟

1.首先需要建立乙個1g的格式為lvm的磁碟分割槽

[root@wangyj ~]# fdsik /dev/sda

command (m for help): n - –新添乙個分割槽

first cylinder (11863-26109, default 11863):

using default value 11863

last cylinder, +cylinders or +size (11863-26109, default 26109): +1g

—建立乙個1g大小的磁碟分割槽

command (m for help): t —t更改磁碟格式

partition number (1-6): 6

hex code (type l to list codes): 8e —為8e(linux lvm格式)

changed system type of partition 6 to 8e (linux lvm)

command (m for help): w —儲存分割槽

the partition table has been altered!

[root@wangyj ~]# partprobe /dev/sda —核心重新讀取載入分割槽資訊

[root@wangyj ~]# fdisk -l —檢視磁碟分割槽狀態

/dev/sda6 11863 11994 1057549+ 8e linux lvm

2.建立邏輯卷的步驟:

1)通過pvcreate命令將linux分割槽處理成物理卷(pv);

2)通過vgcreate命令將建立好的物理卷處理成捲組(vg);

3)通過lvcreate命令將卷組分成若干個邏輯卷(lv);

之後我們可以對邏輯卷進行格式化,掛載,刪除等操作,我們可以動態的調整邏輯卷的大小,並且該操作不會影響我們在邏輯卷lv 上的資料。

2.1、 [root@wangyj ~]# pvcreate /dev/sda6 —建立物理卷

physical volume 「/dev/sda6」 successfully created

2.2 [root@wangyj ~]# vgcreate -s 16m datastore /dev/sda6 —建立捲組

volume group 「datastore」 successfully created

注釋: -s:指定擴充套件塊(pe)的大小,預設為4mb;(相當與磁碟上的簇,擴充套件邏輯卷的基本單位。後面的值可以是8m 16m 32m 64m …..最多65532個擴充套件塊。

datastore:新建立的卷組的名字。

/dev/sda:需要的物理卷可以寫多個;

2.3 [root@wangyj ~]# lvcreate -l 50 -n database datastore —建立邏輯卷

logical volume 「database」 created.

注釋: -l 50:生成的邏輯卷使用50個擴充套件塊,邏輯卷大小=50*pe(16m)

-n database:邏輯卷的名字;

datastore :設定是有那個捲組生成的邏輯卷。

3.格式化邏輯卷

[root@wangyj ~]# mkfs.ext4 /dev/datastore/database —格式化剛建立的lv

vim /etc/fstab —寫入核心,下次開機自動載入

/dev/datastore/database /mnt/wshare ext4 defaults 0 0

4.建立目錄:mkdir /mnt/wshare

掛載:mount -a

檢視:df -h

[root@wangyj ~]# mkdir /mnt/wshare

[root@wangyj ~]# mount -a

[root@wangyj ~]# df -h

實驗結果如下圖:

lvm邏輯卷管理

1 前言 2 lvm組成和概念 3 如何使用lvm,建立邏輯卷的流程和例項 4 如何動態放大 縮小乙個邏輯卷 邏輯捲組 5 如何刪除邏輯卷 邏輯捲組 6 lvm相關命令 1 前言 一直想寫乙個簡單的lvm方面的文章,可以作個背忘,主要以流程和例項為主,希望文章能起到拋磚引玉的 作用.lvm logi...

Lvm(邏輯卷管理)

lvm 邏輯卷管理 1.make lv 1 fdisk dev sdb 1 對sdb進行分割槽,三個主分割槽,乙個擴充套件分割槽,乙個邏輯分割槽,分別為sdb1,sdb2,sdb3,sdb4,sdb5 2 用fdisk dev sdb命令,對分好的磁碟檔案系統進行格式化。3 儲存好分割槽之後,進行p...

LVM 邏輯卷管理

顯示分割槽資訊 root centos7 fdisk l物理硬碟格式為物理卷 pv root centos7 pvcreate dev sda6檢視物理卷 pv 資訊 root centos7 pvs root centos7 pvdisplay 刪除物理卷 pv root centos7 pvre...