溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux7/Centos7磁盤分區(qū)、格式化及LVM管理

發(fā)布時間:2020-07-07 02:05:03 來源:網(wǎng)絡(luò) 閱讀:393 作者:magicm55 欄目:系統(tǒng)運維

RHEL7如何對磁盤進行分區(qū)和格式化以及如何配置LVM,與以前版本的RHEL區(qū)別不大,可以通過disk工具(在圖形桌面中運行)或命令工具(如:fdisk、gdisk、parted)管理硬盤設(shè)備。fdisk可以配置MBR格式; gdisk配置gpt格式, parted可以自己選擇。
傳統(tǒng)的硬盤分區(qū)都是MBR格式,MBR分區(qū)位于0扇區(qū),他一共512字節(jié),前446字節(jié)是grub引導(dǎo)程序,這個會在后面學(xué)習(xí);中間64字節(jié)是分區(qū)表,每個分區(qū)需要16個字節(jié)表示,因此主分區(qū)和擴展分區(qū)一共只能有4個分區(qū),超過4個的分區(qū)只能從擴展分區(qū)上再設(shè)置邏輯分區(qū)來表示。每個分區(qū)的大小無法超過2T。 MBR的最后2個字節(jié)是結(jié)束符號
GPT格式,打破了MBR的限制,可以設(shè)置多達128個分區(qū),分區(qū)的大小根據(jù)操作系統(tǒng)的不同有所變化,但是都突破了2T空間的限制。支持高達 18EB (1EB=1024PB,1PB=1024TB) 的卷大小,允許將主磁盤分區(qū)表和備份磁盤分區(qū)表用于冗余,還支持唯一的磁盤和分區(qū) ID (GUID)。
與 MBR 分區(qū)的磁盤不同,GPT的分區(qū)信息是在分區(qū)中,而不象MBR一樣在主引導(dǎo)扇區(qū)。為保護GPT不受MBR類磁盤管理軟件的危害,GPT在主引導(dǎo)扇區(qū)建立了一個保護分區(qū) (Protective MBR)的MBR分區(qū)表,這種分區(qū)的類型標(biāo)識為0xEE,這個保護分區(qū)的大小在Windows下為128MB,Mac OS X下為200MB,在Window磁盤管理器里名為GPT保護分區(qū),可讓MBR類磁盤管理軟件把GPT看成一個未知格式的分區(qū),而不是錯誤地當(dāng)成一個未分區(qū)的磁盤
在MBR硬盤中,分區(qū)信息直接存儲于主引導(dǎo)記錄(MBR)中(主引導(dǎo)記錄中還存儲著系統(tǒng)的引導(dǎo)程序)。但在GPT硬盤中,分區(qū)表的位置信息儲存在GPT頭中。但出于兼容性考慮,硬盤的第一個扇區(qū)仍然用作MBR,之后才是GPT頭。

GPT的結(jié)構(gòu)如下圖:



首先看看當(dāng)前的硬盤信息


可以在/proc/partitions這個文件查看當(dāng)前的分區(qū)




先試試MBR格式的分區(qū),fdisk選項如下所示

輸入n,可以創(chuàng)建新的MBR分區(qū),然后輸入p可以顯示當(dāng)前的分區(qū)狀態(tài)

重復(fù)n的操作,添加其他分區(qū)。
注:MBR格式磁盤最多可以創(chuàng)建4個主分區(qū)或3個主分區(qū)1個擴展分區(qū),在擴展分區(qū)中可以創(chuàng)建若干個邏輯分區(qū)。
注意id代表了磁盤的用途,可以通過t來改變


看看分區(qū)記錄


gdisk和fdisk非常類似



創(chuàng)建新分區(qū)的時候可以看見可以有128個分區(qū)
parted,和前兩個相比,更靈活,可以自行設(shè)定MBR或GPT格式和分區(qū)


通過mklabel msdos可以設(shè)定為MBR格式,然后可以通過mkpart來劃分分區(qū)

msdos設(shè)定為MBR格式,gpt設(shè)定為GPT格式
primary代表主分區(qū),extended代表擴展分區(qū),logical代表邏輯分區(qū)。
set?number?flag?state用于設(shè)置分區(qū)的用途,flag:boot、lvm、raid。State:on/off表示開啟或關(guān)閉。
parted工具分完區(qū)后無需保存,輸入q退出即可。
劃分好分區(qū)之后,還需要格式化才能使用??梢酝ㄟ^?mkfs/mkswap來格式化文件系統(tǒng)
#mkfs.xfs??/dev/分區(qū)設(shè)備名或#mkfs??-t??xfs??/dev/分區(qū)設(shè)備名


可以修改fstab實現(xiàn)自動加載


測試是否能自動掛載

通過df?-h查看已經(jīng)掛載了的設(shè)備
-T選項可以顯示設(shè)備的文件系統(tǒng)類
有的掛載點路徑比較長,自動分2行顯示,可以-P強制一行顯示
如同進程有pid,用戶有uid,每個文件系統(tǒng)也有自己的id,稱為uuid,但是不是每個分區(qū)都有;如果某個分區(qū)沒有文件系統(tǒng),那么這個分區(qū)是沒有uuid的。
可以通過?blkid(block?id)來查看。注意uuid標(biāo)記的是文件系統(tǒng),而不是分區(qū)。
uuid的好處在于可以通過uuid這個唯一值來掛載系統(tǒng),
這樣可以避免因為刪除硬盤造成的錯位,sda6變成了sda5等等



我們可以通過xfs_admin -U 來手動更改文件系統(tǒng)的uuid


附:在目錄里面可以通過 ls -ld查看目錄的屬性,ls -la查看內(nèi)容的屬性,但是-ld顯示的目錄大小只有4K,這僅僅是目錄本身的大小,要想查看目錄和其內(nèi)容的整個大小,可以通過du來查看,如果只想看最終結(jié)果,使用-s(summary)就行了


下面我們來看看swap分區(qū)如何手動創(chuàng)建。swap類似windows的虛擬內(nèi)存/page file,當(dāng)內(nèi)存不足的時候,數(shù)據(jù)保存在swap中。
有兩種方式可以使用:

第一種單獨用一個分區(qū)來作為swap


創(chuàng)建一個分區(qū)(如:/dev/sdb3),并更改分區(qū)ID為82
執(zhí)行partx ?–a /dev/sdb命令,使分區(qū)修改生效

在分區(qū)上創(chuàng)建swap文件系統(tǒng)



修改fstab實現(xiàn)自動加載



第二種方式是創(chuàng)建一個文件塊,這個文件所占有的空間作為swap使用


對于普通的分區(qū),擴展度不高,一旦分區(qū)格式化完成,很難靈活的再增加或者減少分區(qū)大小。為了解決這個問題,可以使用LVM(邏輯卷)?;具^程是把物理磁盤或者分區(qū)初始化稱為物理卷(PV),然后把PV加入VG(卷組),最后在VG上劃分邏輯的分區(qū)(LVM),LVM可以當(dāng)做普通的分區(qū)進行格式化和掛載。

將準(zhǔn)備的磁盤或分區(qū)創(chuàng)建PV


可以執(zhí)行pvdisplay查看PV的詳細信息,pvremove刪除PV
創(chuàng)建完P(guān)V,之后,需要創(chuàng)建VG,然后添加PV到VG中

可以通過vgdisplay查看具體的信息,注意PE的Size是4M,這個是增減的最小計算單位


注:創(chuàng)建VG時:使用–s選項的作用是在創(chuàng)建時指定PE塊(物理擴展單元)的大小,默認是4M。
如:# vgcreate volGroup03 -s 8M /dev/sdb[12])
我們可以繼續(xù)往vg里面添加新的分區(qū)


若事先沒有把sdb3轉(zhuǎn)化為pv,而是直接添加到vg里面,不過一旦添加了他自動就初始化成pv了。
可以添加當(dāng)然也可以減少pv。 ? #vgreduce vg00 /dev/sdb3

VG準(zhǔn)備就緒,可以創(chuàng)建了LVM了


注意看他的大小其實是112M,因為PE的大小是4M,這個4M是最小單位,不能破開,因此28個PE就是112M




注:大L可以直接指定大小,小l是指定多少個PE的值

也可以設(shè)置剩余空間的百分比



刪除邏輯卷?? #lvremove/dev/vg00/lv01

對已經(jīng)創(chuàng)建的邏輯卷,可以當(dāng)做普通分區(qū)一樣格式化和掛載



修改/etc/fstab文件實現(xiàn)開機自動掛載。

擴展一個邏輯卷,增加300M,首先要確保卷組有大于300M的空閑空間。



執(zhí)行l(wèi)vextend擴展邏輯卷大小


注意邏輯卷的文件系統(tǒng)仍然是109M沒有改變,我們還需要填充文件系統(tǒng)的空白。
RHEL7可以用xfs_growfs來擴大XFS文件系統(tǒng),也可以直接用resize2fs 來處理設(shè)備

注意的是 XFS系統(tǒng)只能增長,不能減少!因此如果需要減少LVM的話,分區(qū)只能使用ext4了



執(zhí)行df查看擴展后的文件系統(tǒng)



?邏輯卷快照
LVM提供一個極妙的設(shè)備,它是snaphot。允許管理員創(chuàng)建一個新的塊裝置,在某個時間點提供了一個精確的邏輯卷副本,快照提供原始卷的靜態(tài)視圖LVM?快照通過把文件系統(tǒng)的改變記錄到一個快照分區(qū),因此當(dāng)你創(chuàng)建一個快照分區(qū)時,你不需要使用和你正創(chuàng)建快照的分區(qū)一樣大小的分區(qū),所需的空間大小取決于快照的使用,所以沒有可循的方法來設(shè)置此大小。如果快照的大小等于原始卷的大小那么快照永遠可用。
快照是特殊的邏輯卷,只可以對邏輯卷做快照。邏輯卷快照和需要做快照的邏輯卷必須在同一個卷組里面
現(xiàn)在在我們的系統(tǒng)中有個邏輯卷/devg00/lv00,我們用lvdisplay來查詢一下這個邏輯卷




可以看到,這個邏輯卷/dev/vg00/lv00的大小是309M。我們將這個邏輯卷/dev/vg00/lv00掛載到/data下面。復(fù)制一些數(shù)據(jù)到/data里面去。方便等下做試驗



現(xiàn)在我們就為邏輯卷/dev/vg00/lv00來做快照



執(zhí)行l(wèi)vscan查看創(chuàng)建好的邏輯卷



可以看到/dev/vg00/lv00是原始邏輯卷,而/dev/vg00/lvsp00是快照

執(zhí)行l(wèi)vdisplay或lvs命令查看邏輯信息



可以看到邏輯卷快照創(chuàng)建成功了,

注意:這個快照卷建好之后,是不需要格式化也不需要進行掛載的。格式化或掛載都會出現(xiàn)的錯誤提示的。

模擬將原邏輯卷中的數(shù)據(jù)刪除



如何恢復(fù)原邏輯卷的數(shù)據(jù)?有兩方式可以恢復(fù)刪除的數(shù)據(jù)

方式一是先將原邏輯卷卸除掛載#umount /dev/vg00/lv00

然后掛載邏輯卷快照即可 #mount /dev/vg00/lvsp00 /data,就可以正常訪問數(shù)據(jù)了



方式二可以通過 lvconvert把快照的內(nèi)容重新寫回原有的lvm

先將原邏輯卷卸除掛載#umount /dev/vg00/lv00

執(zhí)行l(wèi)vconvert將快照的數(shù)據(jù)合并到原邏輯卷 #lvconvert?--merge /dev/vg00/lvsp00

最后掛載原邏輯卷,查看數(shù)據(jù)是否恢復(fù)成功



注:當(dāng)我們把原邏輯卷里面的數(shù)據(jù)給刪除了,邏輯卷快照里面的數(shù)據(jù)還在,所以可以用快照恢復(fù)數(shù)據(jù)。而當(dāng)我們在邏輯卷里面添加數(shù)據(jù),快照是不會發(fā)生改變的,是沒有這個文件的。因為快照只會備份當(dāng)時邏輯卷的一瞬間。

使用ssm(系統(tǒng)存儲管理器)進行邏輯管理

邏輯卷管理器(LVM)是一種極其靈活的磁盤管理工具,它讓用戶可以從多個物理硬驅(qū)創(chuàng)建邏輯磁盤卷,并調(diào)整大小,根本沒有停機時間。最新版本的CentOS/RHEL 7現(xiàn)在隨帶系統(tǒng)存儲管理器(又叫ssm),這是一種統(tǒng)一的命令行界面,由紅帽公司開發(fā),用于管理各種各樣的存儲設(shè)備。目前,有三種可供ssm使用的卷管理后端:LVM、Btrfs和Crypt

準(zhǔn)備ssm,在CentOS/RHEL7上,你需要首先安裝系統(tǒng)存儲管理器??梢酝ㄟ^rpm或yum工具安裝



首先我們來檢查關(guān)于可用硬盤和LVM卷的信息。下面這個命令將顯示關(guān)于現(xiàn)有磁盤存儲設(shè)備、存儲池、LVM卷和存儲快照的信息。

#ssm? list



在這個例子中,有兩個物理設(shè)備(“/dev/sda”和“/dev/sdb”)、二個存儲池(“rhel和vg00”),以及存儲池rhel中創(chuàng)建的兩個LVM卷(“dev/rhel/root”和“/dev/rhel/swap”),存儲池vg00中創(chuàng)建的一個LVM卷(/dev/vg00/lv00)。

下面來講解如何通過ssm創(chuàng)建、管理邏輯卷和邏輯卷快照

至少新添加一塊磁盤,執(zhí)行ssm命令顯示現(xiàn)有磁盤存儲設(shè)備、存儲池、LVM卷的信息



可以看到有兩塊空閑磁盤(sdc、sdd)

創(chuàng)建新的LVM池/卷

在這個示例中,不妨看一下如何在物理磁盤驅(qū)動器上創(chuàng)建新的存儲池和新的LVM卷。如果使用傳統(tǒng)的LVM工具,整個過程相當(dāng)復(fù)雜,需要準(zhǔn)備分區(qū),需要創(chuàng)建物理卷、卷組、邏輯卷,最后還要建立文件系統(tǒng)。不過,若使用ssm,整個過程一蹴而就!

下面這個命令的作用是,創(chuàng)建一個名為mypool的存儲池,創(chuàng)建存儲池中名為lv01的500MB大小的LVM卷,使用XFS文件系統(tǒng)格式化卷,并將它掛載到/mnt/test下。



驗證ssm創(chuàng)建的結(jié)果



或執(zhí)行ssm list



將物理磁盤(sdd)添加到LVM池



新設(shè)備添加到存儲池后,存儲池會自動擴大,擴大多少取決于設(shè)備的大小。檢查名為centos的存儲池的大小執(zhí)行ssm list查看



接下來,我們來擴大現(xiàn)有的LVM卷

擴大LVM卷,不妨將/dev/mypool/lv01卷的大小增加300MB。

如果你在存儲池中有額外空間,可以擴大存儲池中現(xiàn)有的磁盤卷。為此,使用ssm命令的resize選項



執(zhí)行ssm list查看擴大后邏輯卷



可以看到邏輯卷擴大到800M,即在原來的基礎(chǔ)上增加了300M,但文件系統(tǒng)大?。‵s size)還沒有改變,仍然是原來的大小。

為了讓文件系統(tǒng)識別增加后的卷大小,你需要“擴大”現(xiàn)有的文件系統(tǒng)本身。有不同的工具可用來擴大現(xiàn)有的文件系統(tǒng),這取決于你使用哪種文件系統(tǒng)。比如說,有面向EXT2/EXT3/EXT4的resize2fs、面向XFS的xfs_growfs以及面向Btrfs的btrfs,不一而足。

在這個例子中,我們使用CentOS 7,XFS文件系統(tǒng)在默認情況下創(chuàng)建。因而,我們使用xfs_growfs來擴大現(xiàn)有的XFS文件系統(tǒng)。



擴大XFS文件系統(tǒng)后,查看結(jié)果



或執(zhí)行#df?-hT



可以看到LVM擴展成功

邏輯卷快照

對現(xiàn)有的LVM卷(比如/dev/mypool/lv01)生成快照

一旦快照生成完畢,它將作為一個特殊的快照卷存儲起來,存儲了原始卷中生成快照時的所有數(shù)據(jù)





每次原LVM中的數(shù)據(jù)更改,都可以手動執(zhí)行ssm? snapshot生成快照

當(dāng)原LVM數(shù)據(jù)損壞就可以用快照恢復(fù)了

方式一是先將原邏輯卷卸除掛載?#umount /dev/vg00/lv00

然后掛載邏輯卷快照即可 #mount /dev/vg00/lvsp00 /data,就可以正常訪問數(shù)據(jù)了



方式二可以通過 lvconvert把快照的內(nèi)容重新寫回原有的lvm

先將原邏輯卷卸除掛載#umount /dev/vg00/lv00

執(zhí)行l(wèi)vconvert將快照的數(shù)據(jù)合并到原邏輯卷 #lvconvert?--merge /dev/vg00/lvsp00

最后掛載原邏輯卷,查看數(shù)據(jù)是否恢復(fù)成功



有關(guān)ssm的具體用法可以參考ssm的幫助手刪頁

如:刪除LVM卷#ssm? remove <volume>

刪除存儲池#ssm? remove?<pool-name>



來自為知筆記(Wiz)



向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI