您好,登錄后才能下訂單哦!
博文結構
什么是LVM
LVM中PV、VG、PE、LV
擴大LV容量
LVM的磁盤快照
LVM 相關指令匯整
什么是LVM:
LVM 的重點在于“可以彈性的調整 filesystem 的容量!而并非在于性能與數據保全上面。
若需要文件的讀寫性能或者是數據的可靠性,應該用RAID磁盤陣列
LVM 可以整合多個實體 partition 在一起,讓這些 partitions 看起來就像是一個磁盤一樣!而且,還可以在未來新增或移除其他的實體 partition 到這個 LVM 管理的磁盤當中
LVM中PV、VG、PE、LV:
LVM 的全名是 Logical Volume Manager,中文可以翻譯作邏輯卷軸管理員。
LVM 的作法是將幾個實體的 partitions (或 disk)通過軟件組合成為一塊看起來是獨立的大磁盤(VG),然后將這塊大磁盤再經過分區成為可使用分區(LV),最終就能夠掛載使用了。
Physical Volume, PV, 實體卷軸
我們實際的 partition (或 Disk)需要調整系統識別碼(system ID)成為 8e (LVM 的識別碼),然后再經過pvcreate 的指令將他轉成 LVM 最底層的實體卷軸(PV),之后才能夠將這些 PV 加以利用!調整 system ID 的方是就是通過gdisk
Volume Group, VG, 卷軸群組
由一個或多個物理卷組成一個整體,即稱為卷組,在卷組中可以動態的添加或移除物理卷。許多個物理卷可以分別組成不同的卷組,卷組的名稱由用戶自行定義。
所謂的 LVM 大磁盤就是將許多 PV 整合成這個 VG 的東西就是啦!所以 VG 就是 LVM 組合起來的大磁盤!
那么這個大磁盤最大可以到多少容量呢?(PE 以及 LVM 的格式版本有關)
在默認的情況下,使用 32位的 Linux 系統時,基本上 LV 最大僅能支持到 65534 個 PE 而已,若使用默認的 PE 為 4MB 的情況下,最大容量則僅能達到約 256GB 而已~不過,這個問題在 64位的 Linux 系統上面已經不存在了!LV 幾乎沒有啥容量限制
Physical Extent, PE, 實體范圍區塊
LVM 默認使用 4MB 的 PE 區塊,而 LVM 的 LV 在 32 位系統上最多僅能含有 65534 個 PE (lvm1 的格式),因此默認的 LVM 的 LV 會有4M*65534/(1024M/G)=256G。
他是整個 LVM 最小的儲存區塊,也就是說,其實我們的文件數據都是借由寫入PE 來處理的。(類似文件系統的block大小)
Logical Volume, LV, 邏輯卷軸
邏輯卷建立子啊卷組之上,與物理卷沒有直接關系,對于邏輯卷來說,每一個卷組就是一個整體,從這個整體中“切出”一小塊空間,作為用戶創建文件系統的基礎,這一小塊空間就稱為邏輯卷,使用mkfs等工具在邏輯卷上創建文件系統以后,就可以直接掛載到Linux操作系統中目錄下使用。
最終的 VG 還會被切成 LV,這個 LV 就是最后可以被格式化使用的類似分區
那么 LV 是否可以隨意指定大小呢?(否)
既然 PE 是整個 LVM 的最小儲存單位,那么 LV 的大小就與在此 LV 內的 PE 總數有關。
為了方便使用者利用 LVM 來管理其系統,因此 LV 的設備文件名通常指定為“/dev/vgname/lvname ”的樣式!
VG階段
vgcreate :就是主要創建 VG 的指令
vgscan :搜尋系統上面是否有 VG 存在
vgdisplay :顯示目前系統上面的 VG 狀態
vgextend :在 VG 內增加額外的 PV
vgreduce :在 VG 內移除 PV
vgchange :設置 VG 是否啟動(active)
vgremove :刪除一個 VG
LV 階段
lvcreate :創建 LV
lvscan :查詢系統上面的 LV
lvdisplay :顯示系統上面的 LV 狀態
lvextend :在 LV 里面增加容量
lvreduce :在 LV 里面減少容量
lvremove :刪除一個 LV
lvresize :對 LV 進行容量大小的調整
創建邏輯卷并使用的順序:創建物理卷→創建卷組→創建邏輯卷→格式化掛載
常用的LVM邏輯卷與文件系統管理的命令:
pvscan命令:用于掃描系統中所有的物理卷,并輸出相關信息
pvcreate命令:用于將分區或整個硬盤轉換為物理卷,主要是添加LVM屬性信息并劃分PE存儲單位(該命令需要使用硬盤或分區的設備文件作為參數,可以是多個)
pvdisplay命令:用于顯示物理卷的詳細信息,需要使用指定的物理卷作為命令參數,默認時將顯示所有物理卷的信息
pvremove命令:用于將物理卷還原成普通分區或磁盤,不再用于LVM體系,被移除的物理卷將無法被pvscan識別。
卷組管理命令:
vgscan命令:用于掃描系統中以建立的LVM卷組及相關信息。通過執行命令可以列出cl卷組。
vgcreate命令:用于將一個或多個物理卷創建為一個卷組。
[root@localhost ~]# vgcreate web_document /dev/sdb1 /dev/sdb2
#使用物理卷/dev/sdb1、/dev/sdb2創建名為web_document的卷組。
vgdisplay命令:用于顯示系統中個卷組的詳細信息,需要使用指定卷組名作為命令參數(未指定卷組名時將顯示所有卷組的信息)
vgremove命令:用于刪除指定的卷組,將指定卷組名作為參數即可。
vgextend命令:用于擴展卷組的磁盤空間,當創建新的物理卷,并需要將其添加到已有卷組中時,就可以使用vgextend命令,該命令的第一個參數為需要擴展容量的卷組名稱,后面是為需要添加到該卷組中的物理卷。
邏輯卷管理命令:
lvscan命令:用于掃描系統中已建立的邏輯卷及相關信息。通過命令可以可以列出cl卷組中的邏輯卷。
lvcreate命令:用于從指定的卷組中分割空間,以創建新的邏輯卷,需要指定邏輯卷大小、名稱及所在的卷組名作為參數
lvdisplay命令:用于顯示邏輯卷的詳細信息,可以指定邏輯卷的設備文件作為參數,也可以使用卷組名作為參數,以顯示該卷組中所有邏輯卷的信息
lvextend命令:用于動態擴展邏輯卷的空間,當目前使用的邏輯卷空間不足時,可以從所在卷組中分割額外的空間進行擴展。只要指定需增加的容量大小及邏輯卷設備文件位置即可,前提條件是該卷組中還有尚未分配的磁盤空間,否則需要先擴展卷組容量。
vcreate命令:用于刪除指定的邏輯卷,直接使用邏輯卷的設備文件作為參數即可。
配置案例
創建邏輯卷
格式化邏輯卷,創建XFS文件系統。
掛載
如果添加邏輯卷或刪除后,使用命令“ xfs_growfs 掛載點”來更新邏輯卷!
1、xfs文件系統的備份——xfsdump命令:
xfsdump命令的限制:
xfsdump不支持沒有掛載的文件系統,所以只能備份已掛載的;
Xfsdump必須使用root的權限才能操作(涉及文件系統的關系);
Xfsdump只能備份xfs文件系統;
Xfsdump備份下來的數據(文件或存儲媒體)只能讓xfsrestore解壓;
Xfsdump是通過文件系統的UUID來分辨各個備份文件的,因此不能備份兩個具有相同UUID的文件系統。
常用選項:
-L:xfsdump會記錄每次備份的session標頭,這里可以填寫針對此文件系統的簡易說明;
-M:xfsdump可以記錄存儲媒體的標頭,這里可以填寫此媒體的簡易說明。
-l:是L的小寫,就是指定等級,有0~9共10個等級,默認為0,即完整備份,1~9是指增量備份。
-f:有點類似tar,后面接產生的文件,也可以接例如/dev/st0設備文件名或其他一般文件文件名;
-I:大寫的“i”,從/var/lib/xfsdump/inventory 列出目前備份的信息狀態。
root@localhost ~]# xfsdump -l O -L boot_all -Mboot_all -f /srv/boot.dump /boot
#將完整備份的文件名記錄成為/srv/boot.dump
#如果不加-L和-M選項進入互動模式
xfsdump: using file dump (drive_simple) strategy
xfsdump: version 3.1.4 (dump format 3.0) - type ^C for status and control
xfsdump: WARNING: most recent level 0 dump was interrupted, but not resuming that dump since resume (-R) option not specified
xfsdump: level 0 dump of localhost.localdomain:/boot #開始備份本機的/boot系統
xfsdump: dump date: Wed Aug 21 00:04:00 2019 #備份的時間
xfsdump: session id: 2ab52f27-54d8-4cb3-b99f-5f78601afeed #這次dump的ID
xfsdump: session label: "boot_all" #簡單給予一個名字記憶
#開始備份程序
xfsdump: ino map phase 1: constructing initial dump list
xfsdump: ino map phase 2: skipping (no pruning necessary)
xfsdump: ino map phase 3: skipping (only one dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 146934272 bytes
xfsdump: creating dump session media file 0 (media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 146605160 bytes
xfsdump: dump size (non-dir files) : 146370000 bytes
xfsdump: dump complete: 1 seconds elapsed
xfsdump: Dump Summary:
xfsdump: stream 0 /srv/boot.dump OK (success)
xfsdump: Dump Status: SUCCESS
[root@localhost ~]# xfsdump -I #查看有沒有文件被xfsdump備份過的數據
2、xfs文件系統的還原——xfsrestore命令:
常用選項如下:
-I:大寫的“i”跟xfsdump相同的輸出!可查詢備份數據,包括Label名稱和備份時間等;
-f:后面接的就是備份文件!企業中很有可能會接/dev/st0等磁帶機!
-L:可用“-I”查詢到的數據。在這個選項后輸入;
-s:需要接某特定目錄,也能復原某一文件或目錄;
-r:如果是用文件來存儲備份數據,那這個就不需要使用。如果是一個磁盤內有多個文件,需要使用它來達成累積復原;
-i:進入互動模式(一般不需要)
[root@localhost ~]# xfsrestore -I #查看備份文件數據
[root@localhost ~]# xfsrestore -f /srv/boot.dump -L boot_all /boot# 直接將備份數據覆蓋回去
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。