LVM邏輯卷創建管理

      在虛擬機裏面添加三個新的硬盤
                LVM是Logical Volume Manager(邏輯卷管理器)的簡寫,它爲主機提供了更高層次的磁盤存儲管理能力。LVM可以幫助系統管理員爲應用與用戶方便地分配存儲空間。在LVM管理下的邏輯卷可以按需改變大小或添加移除。另外,LVM可以爲所管理的邏輯卷提供定製的命名標識。因此,使用LVM主要是方便了對存儲系統的管理,增加了系統的擴展性。

目前LVM在Linux下有兩個版本,分別是LVM 1和LVM 2,LVM2不僅僅是Linux邏輯卷管理在版本與功能上的升級,而且是架構在一個新的內核存儲子系統(DM,device-mapper)之上的。這個存儲子系統提供了一個輕量級的、可擴展的卷管理設施。除了在原有LVM卷管理功能的基礎上,Linux的邏輯卷管理將會爲用戶提供更多的存儲管理方案,如鏡像、加密卷、多路徑技術。所以在本節將以LVM 2爲例來詳細介紹LVM的創建與管理。

                 [root@1 ~]# cat /etc/redhat-release         #查看系統版本

CentOS Linux release 7.2.1511 (Core)

[root@1 ~]# uname -r #查看系統內核版本

3.10.0-327.el7.x86_64

[root@1 ~]# uname -m #查看系統是否64位

x86_64

首先我們還是做服務之前先把奇葩的防火牆給關掉,因爲很多規則會撞到牆,注意是服務端和客戶端都要做這個操作

[root@1 ~]# iptables -F

[root@1 ~]# iptables -X

[root@1 ~]# iptables -Z

[root@1 ~]# iptables -L

[root@1 ~]# setenforce 0

[root@1 ~]#vi /etc/sysconfig/selinux #修改SELINUX

首先我們先添加一塊3塊硬盤,爲了方便區分我們把每一塊硬盤的大小做了區分,大小分別爲5G、6G和7G,硬盤的類型還是默認的SCSI版本。

[root@02 dev]# fdisk -l #可以列出所有的分區,包括沒有掛上的分區和usb設備,查看硬盤及分區信息;

我們可以看見下面就是掛載上的硬盤

由於硬盤的主引導記錄中僅僅爲分區表保留了64個字節的存儲空間,而每個分區的參數佔據16個字節,故主引導扇區中總計只能存儲4個分區的數據。也就是說,一塊物理硬盤只能劃分爲4個主分區磁盤。並且MBR最大僅支持2TB的硬盤,在現在這個連4T都不稀奇的時代,MBR出場的機會恐怕會越來越少。

sda和hda的區別:

sd代表的是SCSI,SATA接口硬盤

hd代表IDE接口的硬盤

sda和hda最後面的a都代表的是第一塊硬盤

sda1和hda1則代表的是該硬盤的第一分區

[root@02 dev]# fdisk /dev/sdb #對sdb硬盤進行分區

Command (m for help): m #就會輸出幫助;

a 切換可引導標誌(活動分區/引導分區之間切換)

b 編輯BSD磁盤標籤

c 設置DOS操作系統兼容標記(兼容/不兼容之間切換)

d 刪除一個分區

g 創建一個新的空GPT分區表

G 創建一個ILIX(SGI)分區表

l 列出已知分區類型

m 顯示幫助信息

n 添加新分區

o 創建一個新的空DOS分區表

p 顯示磁盤當前的分區表

q 退出不保存更改

s 創建一個新的空白的Sun磁盤標籤

t 更改分區的系統ID

u 顯示/輸入單元

v 驗證磁盤分區表

w 將分區表寫入磁盤並退出(保存並退出)

x 額外功能(僅專家)

Command (m for help): n #添加新分區;

Select (default p): p #添加一個主分區

分區號(1-4,默認1): #默認的分區賬號

第一扇區(2044-1048 575,默認2048): #默認的話就自動分一個號碼

使用默認值2048

最後扇區,+扇區或+大小{k,m,g}(20481085599,默認10485759): #像這裏我打錯了一個符號發現刪除不了我們可以按住Ctrl+Backapace就可以了

Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759): +2G #+2G

我們再依照上面的步驟再加一個新的分區爲1G。

Command (m for help): p #打印分區表

Command (m for help): w #寫入磁盤,保存並退出,否則之前的操作都無效。

分區表已經更改了!

調用IOCLT()來重新讀取分區表。

同步磁盤。

[root@02 ~]# pvcreate /dev/sdb1 /dev/sdb2 #將新創建的兩個分區/dev/sdb1 /dev/sdb2轉化成物理卷PV

[root@02 ~]# vgcreate vg01 /dev/sdb1 /dev/sdb2 #創建卷組 vg01 ,這個是個名字可以更改,並將剛纔創建好的兩個物理卷加入該卷組.

[root@02 ~]# vgdisplay #查看物理卷

以下就是顯示的Vg的名字vg01、大小爲2.99G

以及默認PE大小爲4MB,PE是卷組的最小存儲單元

[root@02 ~]# lvcreate -n lv01 -l 100 vg01 #創建一個名字爲Lv01大小爲100的邏輯卷

邏輯卷“LV01”創建。

lvcreate主要參數:

-L 指定邏輯卷的大小,單位爲“kKmMgGtT”字節

-l 指定邏輯卷的大小(LE數)

-n 後面跟邏輯卷名

-s 創建快照

[root@02 ~]# lvdisplay #顯示邏輯卷屬性顯示LVM邏輯卷空間大小、讀寫狀態和快照信息等屬性。

下面顯示就是LV的詳細參數

[root@02 ~]# pvscan #掃描當前系統中所有硬盤的物理卷

[root@02 ~]# mkfs -t ext4 /dev/vg01/lv01 #使用mkfs在邏輯卷LV01上創建ext4文件系統.

MKE2FS 1.42.9(23-DEC-2013)

文件系統標籤=

操作系統類型:Linux

塊大小=1024(log=0)

片段大小=1024(log=0)

步長=0個塊,條帶寬度=0個塊

102400個節點,409600個塊

爲超級用戶保留的20480個塊(5%)

第一數據塊=1

最大文件系統塊=34078720

50方塊羣

每組8192個塊,每組8192個片段

每組2048個節點

存儲在塊上的超級塊備份:

8193, 24577, 40961、57345, 73729, 204801、221185, 401409

分配組表:完成

寫入索引表:完成

創建日誌(8192個塊):完成

編寫超級塊和文件系統會計信息:完成

[root@02 ~]# df -Th #查看掛載

[root@02 ~]# mkdir /mnt/lv01 #創建一個掛載的目錄隨便命名LV01

[root@02 ~]# mount /dev/vg01/lv01 /mnt/lv01/ #掛載到新創建的目錄下面

[root@02 ~]# vim /etc/fstab

爲了查看/mnt/LV01是否設置正確,可以先卸載邏輯卷LV01,然後使用mount –a 使內核重新讀取/mnt/LV01,看是否能夠自動掛載.

當邏輯卷不夠用了,如何擴展。

[root@02 ~]# fdisk /dev/sdc #爲了實驗接着我們又在另外一塊硬盤上面下手

添加分區步驟同上,爲了方便我分別創建了兩個1G的分區,看一下圖片

[root@02 ~]# pvcreate /dev/sdc{1,2} #創建一個pv

[root@02 ~]# lsblk -f #列出所有塊設備信息

通過partx工具讓內核重讀磁盤分區表,partx命令告用來訴內核當前磁盤的分區情況

選項

-a 增加制定的分區或讀磁盤新增的分區

-d 刪除制定或所有的分區

-l 列出分區

--type 指定分區類型。dos,bsd,solaris,unix,或者gpt

--nr M-N 指定分區範圍

[root@02 ~]# partx -s /dev/sdc #顯示磁盤分區信息

partprobe: 用於重讀分區表,當出現刪除文件後,出現仍然佔用空間。可以partprobe在不重啓的情況下重讀分區。將磁盤分區表變化信息通知內核,請求操作系統重新加載分區表。

-d 不更新內核

-s 顯示磁盤分區彙總信息

-h 顯示幫助信息

-v 顯示版本信息

[root@02 ~]# vgcreate -s 8M kk /dev/sdc1 /dev/sdc2 #創建名爲kk卷組上的物理卷的8MPE大小

[root@02 ~]# vgdisplay 查看一下

[root@02 ~]# lvcreate -L 1.98G kk /dev/sdc1 /dev/sdc2 #因爲上面vg大小爲1.98G所以只能創建這麼大 的LV卷

[root@02 ~]# mkfs -t ext4 /dev/kk/lvol0 #指定格式

[root@02 ~]# mkdir /mnt/lv02 #創建一個掛載目錄

[root@02 ~]# mount /dev/kk/lvol0 /mnt/lv02 #掛載目錄

[root@02 ~]# df -Th #看一下掛載

[root@02 ~]# lvreduce -L -400M /dev/kk/lvol0 #縮小邏輯卷400M

//警告:將活動邏輯卷減少到1.59 GIB

//這可能破壞您的數據(文件系統等)。

//你真的想減少LVOL0嗎?[Y/N]:Y

//邏輯卷KK/LVOL0的大小從1.98 GIB(254個擴展)變爲1.59個GIB(204個擴展)。

//邏輯卷LVOL0成功調整大小。

[root@02 ~]# lvdisplay #查看一下邏輯捲髮現已經變成了1.59GiB了

[root@02 ~]# mount /dev/mapper/kk-lvol0 /mnt/lv02 #我掛載一下發現除了問題

安裝:錯誤的FS類型,壞的選項,壞的超級塊/DEV/MAPPER/KK-LVRO0,

缺少代碼頁或輔助程序或其他錯誤

在某些情況下,在SysLog-Type中找到有用的信息。

尾巴等。

[root@02 ~]# resize2fs -f /dev/mapper/kk-lvol0 1500M #這種情況我又重新縮小了一下邏輯卷

[root@02 ~]# mount /dev/mapper/kk-lvol0 /mnt/lv02 #重新掛載一下

[root@02 ~]# df -h #看一下發現已經掛載上了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章