前一篇文章學(xué)習(xí)了磁盤分區(qū)涵叮、格式化惭蹂、掛載等相關(guān)知識,本文將講解RAID和LVM技術(shù)割粮。
磁盤管理操作主要是運維人員用的較多盾碗,如果只是單純的開發(fā)人員,可以先略過本文舀瓢。但是在很多小公司里往往都是一人多用廷雅,運維、開發(fā)通常都是同一個人京髓,因此對個人的技能要求更高航缀。即便不是如此,多了解下相關(guān)概念也是有利而無害的堰怨。
本文將先講解RAID技術(shù)方案相關(guān)理論知識并通過案例演示RAID操作芥玉,然后演示LVM技術(shù)以解決存儲資源動態(tài)調(diào)整問題。
一备图、獨立冗余磁盤陣列(RAID)
RAID(Redundant Array of Independent Disk)技術(shù)把多個硬盤設(shè)備組合成一個容量更大灿巧、安全性更好的磁盤陣列赶袄,并把數(shù)據(jù)切割成多個區(qū)段后分別存放在各個不同的物理硬盤設(shè)備上,利用分散讀寫技術(shù)提升磁盤陣列整體的性能抠藕,同時把多個重要數(shù)據(jù)的副本同步到不同的物理硬盤設(shè)備上饿肺,從而起到了非常好的數(shù)據(jù)冗余備份效果。
簡單說就是通過RAID技術(shù)可以提升磁盤讀寫性能盾似,同時可以冗余備份數(shù)據(jù)保證數(shù)據(jù)可靠性敬辣。但是性能和可靠性不可能同時滿足的非常好,因此在二者之間作出權(quán)衡就產(chǎn)生了不同的RAID方案零院。
1.1 RAID方案及特點
據(jù)說目前RAID磁盤陣列的方案至少有十幾種购岗,然而萬變不離其宗,都是在讀寫性能和可靠性之間權(quán)衡门粪,因此只介紹幾種比較有代表性的方案。
方案 | 特點 |
---|---|
RAID0 | 磁盤讀寫性能高烹困,但數(shù)據(jù)可靠性低 |
RAID1 | 磁盤設(shè)備利用率低玄妈,但數(shù)據(jù)可靠性高 |
RAID5 | 兼顧成本、讀寫性能和數(shù)據(jù)安全的折中方案 |
RAID10 | 相對于成本髓梅,更看重數(shù)據(jù)安全可靠 |
1.1.1 RAID0
把多塊物理硬盤設(shè)備通過硬件或軟件的方式串聯(lián)在一起拟蜻,組成一個大的卷組,并將數(shù)據(jù)依次寫入到各個物理硬盤中枯饿。
最理想情況下酝锅,磁盤讀寫性能將提高數(shù)倍,但如果其中任意一塊磁盤損壞將導(dǎo)致整個系統(tǒng)數(shù)據(jù)被破壞奢方。也就是說雖然RAID0有效提高磁盤數(shù)據(jù)的吞吐速度搔扁,但是不具備數(shù)據(jù)備份和錯誤修復(fù)能力。
其示意圖如下:
1.1.2 RAID1
如上所述蟋字,雖然RAID0提升了磁盤讀寫速度稿蹲,但是由于它將數(shù)據(jù)依次寫入各個磁盤中,把數(shù)據(jù)分開存儲鹊奖,如果其中一塊磁盤發(fā)生故障將會導(dǎo)致整個系統(tǒng)數(shù)據(jù)損壞苛聘。因此如果對數(shù)據(jù)要求性要求較高,但對磁盤讀寫速度沒有要求的話忠聚,這種方案就不合適设哗,需要用到RAID1方案。
RAID1示意圖如下:
RAID1是把多塊硬盤綁定两蟀,數(shù)據(jù)同時寫入多塊磁盤网梢,這樣就會有多份數(shù)據(jù)副本,當(dāng)其中某一塊硬盤發(fā)生故障后垫竞,立即自動以熱交換的方式來恢復(fù)數(shù)據(jù)的正常使用澎粟。
雖然通過副本的形式保證了數(shù)據(jù)的安全性蛀序,但是磁盤設(shè)備利用率不高,從示意圖可以看出活烙,如果是2塊磁盤則利用率只有50%徐裸,因此增加了成本開銷。
1.1.3 RAID5
前面兩種方案分別偏向于磁盤速度和數(shù)據(jù)安全啸盏,而RAID5則是在讀寫性能重贺、數(shù)據(jù)安全和成本之間的一個相互妥協(xié)方案。
示意圖如下:
RAID5技術(shù)是把硬盤設(shè)備的數(shù)據(jù)奇偶校驗信息保存到其他硬盤設(shè)備中回懦。這樣的好處是其中任何一設(shè)備損壞后不至于出現(xiàn)致命缺陷气笙,圖中的parity部分存放的就是數(shù)據(jù)的奇偶校驗信息。
簡單說就是RAID5方案實際上沒有備份硬盤中的真實數(shù)據(jù)信息(數(shù)據(jù)只有一份)怯晕,而是當(dāng)硬盤設(shè)備出現(xiàn)問題后通過奇偶校驗信息來嘗試重建損壞的數(shù)據(jù)潜圃。
這種方案兼顧了了硬盤設(shè)備的讀寫速度、數(shù)據(jù)安全性與存儲成本問題舟茶。
1.1.4 RAID10
雖然RAID5看起來在成本問題谭期、磁盤讀寫以及數(shù)據(jù)安全性有了一個相互妥協(xié)的方案,但實際上很多企業(yè)吧凉,尤其是金融企業(yè)數(shù)據(jù)本身的價值遠(yuǎn)比磁盤價格高隧出,因此成本并不是第一考慮要素,在這種場景下阀捅,一般是采用RAID10技術(shù)胀瞪。
RAID10方案實際就是把RAID0和RAID1兩種方案進(jìn)行組合而來,示意圖如下:
如圖所示饲鄙,需要至少4塊硬盤來組建RAID10凄诞,先兩兩組合制作為RAID1確保數(shù)據(jù)有副本來保證安全性,然后在將組合后的兩個RAID1采用RAID0進(jìn)行組合忍级,進(jìn)一步提高設(shè)備的讀寫速度幔摸。
從理論上講,只要同一組中的硬盤不全壞掉颤练,那么最多可以損壞50%的硬盤設(shè)備而不丟失數(shù)據(jù)既忆。
由于RAID10方案繼承了RAID0的高讀寫速度和RAID1的數(shù)據(jù)安全性,在不考慮成本的情況下RAID10的性能都超過了RAID5嗦玖,因此當(dāng)前成 為廣泛使用的一種存儲技術(shù)患雇。
說明:由于篇幅所限,其他的方案就不一一列出宇挫,需要說明的是應(yīng)該按照實際需求去考慮成本苛吱、磁盤性能、數(shù)據(jù)安全性等因素器瘪,按需選擇最合適需求場景的方案翠储。
1.2 mdadm命令
通過上一篇文章“l(fā)inux入門系列12--磁盤管理之分區(qū)绘雁、格式化與掛載”的講解,已經(jīng)學(xué)會了磁盤設(shè)備管理之后援所,再來部署RAID就會非常簡單庐舟,因此如果還沒掌握的話,建議先返回去看上一篇文章住拭。
在正式操作RAID之前挪略,我們先看一下在linux中RAID磁盤陣列的管理命令mdadm。
語法格式:
? mdadm [模式參數(shù)] RAID名稱 [選項] [成員磁盤列表]
參數(shù)選項:
參數(shù) | 作用 |
---|---|
-a | 檢查設(shè)備名稱 |
-n | 指定設(shè)備數(shù)量 |
-l | level滔岳,指定 RAID 級別 |
-C | 創(chuàng)建RAID |
-v | 顯示詳細(xì)過程 |
-f | 模擬設(shè)備損壞 |
-r | remove杠娱,移除設(shè)備 |
-D | 查看詳細(xì)信息 |
1.3 實例1-RAID10部署
1.3.1 環(huán)境準(zhǔn)備
我們直接在虛擬機中模擬添加多塊磁盤來演示RAID的操作,生產(chǎn)環(huán)境中采用的命令和步驟都是一致的谱煤。
為了避免實驗之間的干擾摊求,我們先克隆一臺新的Centos虛擬機進(jìn)行演示
點擊“克隆”后,彈出虛擬機向?qū)?/p>
點擊“下一步”
保存默認(rèn)選擇“虛擬機中的當(dāng)前狀態(tài)”刘离,點擊“下一步”
選擇“創(chuàng)建完整的克隆”睹簇,點擊“下一步”
按需修改虛擬機名稱已經(jīng)存放的位置,點擊“完成”按鈕
等待克隆完成(根據(jù)不同機器的性能寥闪,克隆時間不同)
這樣新的虛擬機就準(zhǔn)備好了。
1.3.2 創(chuàng)建RAID10
如前所述磨淌,RAID10至少需要4塊磁盤疲憋,因此我們先添加4塊磁盤。
(1)添加磁盤
選擇剛才克隆的虛擬機梁只,點擊“編輯虛擬機設(shè)置”
在彈出的“虛擬機設(shè)置”窗口中缚柳,點擊“添加”
在彈出的“添加硬件向?qū)А敝羞x擇“硬盤”,然后點擊“下一步”
磁盤類型保存默認(rèn)“SCSI”搪锣,點擊“下一步”
磁盤類型保持默認(rèn)的“創(chuàng)建新虛擬機磁盤”秋忙,點擊“下一步”
根據(jù)需要設(shè)置磁盤大小,此處設(shè)置為1G构舟,點擊“下一步”
選擇磁盤文件存放路徑灰追,點擊“完成”按鈕
即可看到剛才添加的一塊磁盤已經(jīng)成功。
在上邊界面中點擊“添加”按鈕狗超,用相同的方法再添加3塊磁盤弹澎,總共新添加4塊磁盤。
(2)創(chuàng)建RAID10磁盤陣列
啟動剛才添加磁盤的虛擬機努咐,并用之前講解的lsblk或fdisk查看磁盤設(shè)備
[root@origin ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 19.5G 0 part
├─centos-swap 253:0 0 2G 0 lvm [SWAP]
└─centos-root 253:1 0 17.5G 0 lvm /
sdb 8:16 0 1G 0 disk
sdc 8:32 0 1G 0 disk
sdd 8:48 0 1G 0 disk
sde 8:64 0 1G 0 disk
sr0 11:0 1 3.9G 0 rom /run/media/root/CentOS 7 x86_64
[root@origin ~]# fdisk -l
Disk /dev/sde: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdd: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdc: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
...省略部分內(nèi)容
[root@origin ~]#
可以看到剛才添加的磁盤:sdb苦蒿、sdc、sdd渗稍、sde佩迟,設(shè)備名稱名稱分別為:/dev/sdb团滥,/dev/sdc,/dev/sdd报强,/dev/sde
接下來用mdadm命令創(chuàng)建RAID10
[root@origin ~]# mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm: layout defaults to n2
mdadm: layout defaults to n2
mdadm: chunk size defaults to 512K
mdadm: size set to 1047552K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@origin ~]#
C參數(shù)代表創(chuàng)建一個RAID陣列卡灸姊;-v參數(shù)顯示創(chuàng)建的過程,同時在后面追加一個設(shè)備名稱/dev/md0躺涝,這樣/dev/md0就是創(chuàng)建后的RAID 磁盤陣列的名稱厨钻;-a yes 參數(shù)代表自動創(chuàng)建設(shè)備文件;-n 4參數(shù)代表使用4塊硬盤來部署這個RAID磁盤陣列坚嗜;而-l 10參數(shù)則代表RAID10方案夯膀。
創(chuàng)建磁盤陣列成功之后,下一步就是格式化
1.3.3 格式化RAID
用mkfs命令格式化RAID磁盤陣列
[root@origin ~]# mkfs.ext4 /dev/md0
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
131072 inodes, 523776 blocks
26188 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
[root@origin ~]#
1.3.4 掛載磁盤陣列
創(chuàng)建目錄并掛載磁盤陣列
[root@origin ~]# mkdir /raid
[root@origin ~]# mount /dev/md0 /raid
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 140K 914M 1% /dev/shm
tmpfs 914M 9.0M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 119M 379M 24% /boot
/dev/sr0 3.9G 3.9G 0 100% /run/media/root/CentOS 7 x86_64
/dev/md0 2.0G 6.0M 1.9G 1% /raid
[root@origin ~]#
咦苍蔬,細(xì)心的朋友可能就有疑問了诱建,甚至開始懷疑是不是自己操作錯了,前面明明添加了4塊磁盤碟绑,每個磁盤為1G俺猿,總量應(yīng)該為4G,但此處卻看到/dev/md0大小為2G格仲?
是的押袍,你沒看錯,根據(jù)前面講解的RAID10方案凯肋,容量會減少谊惭。此處可以看到4塊磁盤的情況下,可用容量會減少一半侮东。
我們還需要把掛載信息寫入到配置文件中圈盔,使其永久生效
[root@origin ~]# echo "/dev/md0 /raid ext4 defaults 0 0">>/etc/fstab
[root@origin ~]# cat /etc/fstab
...省略部分內(nèi)容
/dev/md0 /raid ext4 defaults 0 0
[root@origin ~]#
這樣就把磁盤陣列掛載到了raid目錄。
1.3.5 查看磁盤陣列信息
查看磁盤陣列信息
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 64 3 active sync /dev/sde
[root@origin ~]#
可以看到4塊磁盤陣列中的4塊磁盤均已正常工作悄雅。
至此驱敲,RAID10方案部署完成。由此可見宽闲,整個操作流程給添加硬盤一致众眨,都是需要創(chuàng)建、格式化容诬、掛載等步驟围辙,非常簡單。
1.4 實例2-修復(fù)RAID10中壞掉的磁盤
此實驗?zāi)M剛才的磁盤陣列中某塊硬盤壞掉后的替換操作放案,因此在前邊的環(huán)境中繼續(xù)執(zhí)行以下操作姚建。
1.4.1 模擬設(shè)備損壞
使用mdadm命令的-f參數(shù)模擬設(shè)備損壞
[root@origin ~]# mdadm /dev/md0 -f /dev/sdb
mdadm: set /dev/sdb faulty in /dev/md0
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 64 3 active sync /dev/sde
0 8 16 - faulty /dev/sdb
[root@origin ~]#
在確認(rèn)有一塊物理硬盤設(shè)備出現(xiàn)損壞而不能繼續(xù)正常使用后,使用mdadm命令將其移除吱殉,然后查看RAID磁盤陣列的狀態(tài)掸冤,發(fā)現(xiàn)/dev/sdb磁盤的狀態(tài)已經(jīng)改變厘托。
在RAID10級別的磁盤陣列中,當(dāng)RAID1磁盤陣列中存在一個故障盤時并不影響RAID10 磁盤陣列的使用稿湿。當(dāng)購買了新的硬盤設(shè)備后再使用 mdadm 命令來予以替換即可铅匹,在此期間我們可以在/RAID目錄中正常地創(chuàng)建或刪除文件。
由于我們是在虛擬機中模擬的饺藤,為了更真實包斑,先重啟系統(tǒng),之后再繼續(xù)后邊的操作涕俗。
重啟之后發(fā)現(xiàn)損壞的盤已經(jīng)不再磁盤陣列中了
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 64 3 active sync /dev/sde
[root@origin ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 19.5G 0 part
├─centos-swap 253:0 0 2G 0 lvm [SWAP]
└─centos-root 253:1 0 17.5G 0 lvm /
sdb 8:16 0 1G 0 disk
sdc 8:32 0 1G 0 disk
└─md0 9:0 0 2G 0 raid10 /raid
sdd 8:48 0 1G 0 disk
└─md0 9:0 0 2G 0 raid10 /raid
sde 8:64 0 1G 0 disk
└─md0 9:0 0 2G 0 raid10 /raid
sr0 11:0 1 3.9G 0 rom
1.4.2 取消磁盤陣列目錄掛載
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 80K 914M 1% /dev/shm
tmpfs 914M 8.9M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/md0 2.0G 6.0M 1.9G 1% /raid
/dev/sda1 497M 134M 363M 27% /boot
[root@origin ~]# umount /raid/
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 80K 914M 1% /dev/shm
tmpfs 914M 8.9M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 134M 363M 27% /boot
[root@origin ~]#
添加磁盤罗丰,需要先取消掛載
1.4.3 添加磁盤并加入磁盤陣列
取消掛載之后,我們再用mdadm命令的-a參數(shù)添加磁盤
[root@origin ~]# mdadm /dev/md0 -a /dev/sdb
mdadm: added /dev/sdb
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
4 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 64 3 active sync /dev/sde
[root@origin ~]#
可以看到/dev/sdb設(shè)備加入磁盤陣列成功
1.4.4 重新掛載磁盤陣列
[root@origin ~]# mount -a
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 80K 914M 1% /dev/shm
tmpfs 914M 8.9M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 119M 379M 24% /boot
/dev/md0 2.0G 6.0M 1.9G 1% /raid
可以看到磁盤陣列/dev/md0又成功掛載到/raid目錄了再姑。
由于之前/etc/fstab文件以及添加了記錄萌抵,因此此處就無須再添加了。
至此就模擬出設(shè)備壞掉之后元镀,重新用新磁盤修復(fù)的過程绍填。
1.5 實例3-RAID5+備份盤方案
按上邊的RAID10部署方案,最多允許 50%的硬盤設(shè)備發(fā)生故障栖疑。同一組中的磁盤只要不全壞都可以正常工作讨永,但是在極端情況下如果同一個RAID1中的磁盤設(shè)備全部損壞,也會導(dǎo)致數(shù)據(jù)丟失遇革。這種情況我們采用采用多加一塊備份盤來解決卿闹,這塊硬盤平時處于閑置狀態(tài),一旦RAID磁盤陣列中有硬盤出現(xiàn)故障后則會馬上自動頂替上去澳淑。
同樣為了避免干擾,重新克隆一個虛擬機插佛,并采用RAID5方案來進(jìn)行演示杠巡。
采用RAID5并沒有什么特別之處,目的只是為了演示下RAID5的用法雇寇,因為前面示例1和2都是用的RAID10氢拥。
由于RAID5至少需要3塊磁盤,另外此方案還需要一塊備份盤锨侯,因此在虛擬機中克隆新機器后嫩海,添加4塊硬盤。
1.5.1 創(chuàng)建RAID5
采用mdadm命令創(chuàng)建RAID5
[root@origin ~]# mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 1047552K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@origin ~]#
參數(shù)-n 3代表創(chuàng)建這個RAID5磁盤陣列所需的硬盤數(shù)囚痴,參數(shù)-l 5代表RAID的級別叁怪,而參數(shù)-x 1則代表有一塊備份盤。
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
4 8 48 2 active sync /dev/sdd
3 8 64 - spare /dev/sde
查看/dev/md0磁盤陣列看到有一塊備份盤在等待中了(spare)深滚。
1.5.2 格式RAID5磁盤陣列
用mkfs命令將磁盤陣列格式化為ext4文件格式
[root@origin ~]# mkfs.ext4 /dev/md0
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
131072 inodes, 523776 blocks
26188 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
[root@origin ~]#
1.5.3 掛載磁盤陣列到目錄
[root@origin ~]# echo "/dev/md0 /raid ext4 defaults 0 0" >> /etc/fstab
[root@origin ~]# mkdir /raid
[root@origin ~]# mount -a
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
...省略部分內(nèi)容
/dev/md0 2.0G 6.0M 1.9G 1% /raid
[root@origin ~]#
1.5.4 模擬磁盤損壞
我們再次模擬把硬盤設(shè)備/dev/sdb 移出磁盤陣列
[root@origin ~]# mdadm /dev/md0 -f /dev/sdb
mdadm: set /dev/sdb faulty in /dev/md0
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
3 8 64 0 active sync /dev/sde
1 8 32 1 active sync /dev/sdc
4 8 48 2 active sync /dev/sdd
0 8 16 - faulty /dev/sdb
[root@origin ~]#
迅速查看/dev/md0 磁盤陣列的狀態(tài)奕谭,發(fā)現(xiàn)備份盤/dev/sde已經(jīng)被自動頂替上去并開始了數(shù)據(jù)同步涣觉。
1.5.5 恢復(fù)損壞的磁盤
真實場景下,我們要保證隨時有一塊空閑的備份盤以防不測血柳,因此需要替換或修復(fù)剛才壞掉的盤/dev/sdb官册,恢復(fù)后它又自動變?yōu)榭臻e的備份盤,一旦有設(shè)備壞掉又會自動頂上去难捌,從而保證數(shù)據(jù)的安全性膝宁。
由于我們上邊一個步驟是模擬的/dev/sdb設(shè)備壞點,雖然壞了但是還是在占用中根吁,因此重啟虛擬機(重啟后發(fā)現(xiàn)/dev/sdb就沒有了员淫,不重啟會提示/dev/sdd設(shè)備繁忙無法成功執(zhí)行以下步驟),然后執(zhí)行以下操作:
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
3 8 64 0 active sync /dev/sde
1 8 32 1 active sync /dev/sdc
4 8 48 2 active sync /dev/sdd
[root@origin ~]# umount /raid/
[root@origin ~]# mdadm /dev/md0 -a /dev/sdb
mdadm: added /dev/sdb
[root@origin ~]# mount -a
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 80K 914M 1% /dev/shm
tmpfs 914M 8.9M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 134M 363M 27% /boot
/dev/md0 2.0G 6.0M 1.9G 1% /raid
[root@origin ~]# mdadm -D /dev/md0
/dev/md0:
...省略部分內(nèi)容
Number Major Minor RaidDevice State
3 8 64 0 active sync /dev/sde
1 8 32 1 active sync /dev/sdc
4 8 48 2 active sync /dev/sdd
5 8 16 - spare /dev/sdb
[root@origin ~]#
可以看到婴栽,添加后/dev/sdb設(shè)備又自動變?yōu)閭浞荼P了满粗。這樣就保證了數(shù)據(jù)的安全。
二愚争、邏輯卷管理器(LVM)
前面講解的用RAID磁盤陣列技術(shù)來管理磁盤設(shè)備映皆,雖然能有效提供磁盤設(shè)備的讀寫性能以及數(shù)據(jù)的安全性,但是硬盤設(shè)備分區(qū)或部署RAID磁盤陣列后轰枝,硬盤分區(qū)大小就難以調(diào)整捅彻,而LVM(邏輯卷管理器)技術(shù)可以允許用戶對硬盤資源進(jìn)行動態(tài)調(diào)整。
2.1 LVM概述
LVM(Logical Volume Manager)是Linux系統(tǒng)用于對硬盤分區(qū)進(jìn)行管理的一種機制鞍陨,創(chuàng)建初衷是為了解決硬盤設(shè)備在創(chuàng)建分區(qū)后不易修改分區(qū)大小的缺陷步淹。
盡管對傳統(tǒng)的硬盤分區(qū)進(jìn) 行強制擴(kuò)容或縮容從理論上來講是可行的,但是卻可能造成數(shù)據(jù)的丟失诚撵。
LVM架構(gòu)圖如下:
LVM技術(shù)是在硬盤分區(qū)和文件系統(tǒng)之間添加了一個邏輯層缭裆,它提供了一個抽象的卷組,可以把多塊硬盤進(jìn)行卷組合并寿烟。這樣一來澈驼,用戶不必關(guān)心物理硬盤設(shè)備的底層架構(gòu)和布局,就可以實現(xiàn)對硬盤分區(qū)的動態(tài)調(diào)整筛武。
物理卷處于LVM中的最底層缝其,可以理解為物理硬盤、硬盤分區(qū)或者RAID磁盤陣列徘六。卷組建立在物理卷之上内边,一個卷組可以包含多個物理卷,而且在卷組創(chuàng)建之后也可以繼續(xù)向其中添加新的物理卷待锈。邏輯卷是用卷組中空閑的資源建立的漠其,并且邏輯卷在建立后可以動態(tài)地擴(kuò)展或縮小空間。
在生產(chǎn)環(huán)境中無法精確地評估每個硬盤分區(qū)在日后的使用情況,因此會導(dǎo)致 原先分配的硬盤分區(qū)不夠用辉懒。隨著業(yè)務(wù)的增加磁盤不夠用了需要擴(kuò)容阳惹,或者業(yè)務(wù)縮減我們需要對磁盤分區(qū)進(jìn)行精簡縮容等等,這些都可以通過LVM來解決眶俩。
部署LVM時莹汤,需要逐個配置物理卷、卷組和邏輯卷颠印。常用命令如下:
功能 | 物理卷管理 | 卷組管理 | 邏輯卷管理 |
---|---|---|---|
掃描 | pvscan | vgscan | lvscan |
建立 | pvcreate | vgcreate | lvcreate |
顯示 | pvdisplay | vgdisplay | lvdisplay |
刪除 | pvremove | vgremove | lvremove |
擴(kuò)展 | vgextend | lvextend | |
縮小 | vgreduce | lvreduce |
2.2 案例實操
為了避免干擾纲岭,重新克隆一個虛擬機,并添加2塊磁盤(添加2塊的目的是為了演示將磁盤添加到LVM的卷組中线罕,實際情況可能會有更多的磁盤)止潮。
大概步驟為:先對這兩塊新硬盤進(jìn)行創(chuàng)建物理卷的操作,然后對這兩塊硬盤進(jìn)行卷組合并钞楼,接下來根據(jù)需求把合并后的卷組切割出一個約為 150MB 的邏輯卷設(shè)備喇闸,最后把這個邏輯卷設(shè)備格式化成 EXT4 文件系統(tǒng)后掛載使用。
2.2.1 部署LVM
(1)讓磁盤設(shè)備支持LVM
[root@origin ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 19.5G 0 part
├─centos-swap 253:0 0 2G 0 lvm [SWAP]
└─centos-root 253:1 0 17.5G 0 lvm /
sdb 8:16 0 1G 0 disk
sdc 8:32 0 1G 0 disk
sr0 11:0 1 3.9G 0 rom /run/media/root/CentOS 7 x86_64
[root@origin ~]# pvcreate /dev/sdb /dev/sdc
Physical volume "/dev/sdb" successfully created
Physical volume "/dev/sdc" successfully created
[root@origin ~]# pvscan
PV /dev/sda2 VG centos lvm2 [19.51 GiB / 0 free]
PV /dev/sdc lvm2 [1.00 GiB]
PV /dev/sdb lvm2 [1.00 GiB]
Total: 3 [21.51 GiB] / in use: 1 [19.51 GiB] / in no VG: 2 [2.00 GiB]
[root@origin ~]#
查看剛才新家的2塊設(shè)備為:sdb询件、sdc燃乍。將其創(chuàng)建物理卷,并通過pvscan命令查看以創(chuàng)建物理卷宛琅。
(2)磁盤設(shè)備加入卷組
[root@origin ~]# vgcreate storage /dev/sdb /dev/sdc
Volume group "storage" successfully created
[root@origin ~]# vgdisplay
--- Volume group ---
VG Name storage
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 1.99 GiB
PE Size 4.00 MiB
Total PE 510
Alloc PE / Size 0 / 0
Free PE / Size 510 / 1.99 GiB
VG UUID EKcctk-C1nM-Y2W8-s7pS-1bq8-W9ie-UTJM8Z
...省略部分內(nèi)容
[root@origin ~]# vgscan
Reading all physical volumes. This may take a while...
Found volume group "storage" using metadata type lvm2
Found volume group "centos" using metadata type lvm2
[root@origin ~]#
用vgcreate創(chuàng)建名稱為storage的卷組刻蟹,并通過vgdisplay或vgscan可以查看。
(3)創(chuàng)建邏輯卷
切割出一個約為 150MB 的邏輯卷設(shè)備嘿辟。這里需要注意切割單位的問題舆瘪,在對邏輯卷進(jìn)行切割時有兩種計量單位。第一種是以容 量為單位红伦,所使用的參數(shù)為-L英古。例如,使用-L 150M生成一個大小為 150MB 的邏輯卷昙读。另外一種是以基本單元的個數(shù)為單位召调,所使用的參數(shù)為-l。每個基本單元的大小默認(rèn)為 4MB箕戳。例如某残,使用-l 37 可以生成一個大小為 37×4MB=148MB 的邏輯卷国撵。
[root@origin ~]# lvcreate -n vo -l 37 storage
Logical volume "vo" created
[root@origin ~]# lvscan
ACTIVE '/dev/storage/vo' [148.00 MiB] inherit
ACTIVE '/dev/centos/root' [17.51 GiB] inherit
ACTIVE '/dev/centos/swap' [2.00 GiB] inherit
[root@origin ~]# lvdisplay
--- Logical volume ---
LV Path /dev/storage/vo
LV Name vo
VG Name storage
LV UUID qziHT9-1qTT-1CRa-TIoq-cosz-Hhn0-jX5CVm
LV Write Access read/write
LV Creation host, time origin, 2020-01-01 22:14:18 +0800
LV Status available
'#' open 0
LV Size 148.00 MiB
Current LE 37
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
...省略部分內(nèi)容
[root@origin ~]#
通過lvcreate創(chuàng)建名稱為vo的邏輯卷后陵吸,通過lvdisplay可以查看/dev/storage/vo大小為剛設(shè)置的148M(LV Size 148.00 MiB)。
(4)格式化邏輯卷并掛載
[root@origin ~]# mkfs.ext4 /dev/storage/vo
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
38000 inodes, 151552 blocks
7577 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=33816576
19 block groups
8192 blocks per group, 8192 fragments per group
2000 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729
Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
[root@origin ~]# mkdir /lvm
[root@origin ~]# mount /dev/storage/vo /lvm
[root@origin ~]# echo "/dev/storage/vo /lvm ext4 defaults 0 0" >> /etc/fstab
[root@origin ~]#
格式化邏輯卷后掛載到lvm目錄介牙,并把掛載信息寫入fstab文件使其開機自動生效壮虫。
(5)查看掛載狀態(tài)
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 140K 914M 1% /dev/shm
tmpfs 914M 9.0M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 119M 379M 24% /boot
/dev/sr0 3.9G 3.9G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/storage-vo 140M 1.6M 128M 2% /lvm
[root@origin ~]# echo "test">/lvm/test.txt
[root@origin ~]# ls /lvm/
lost+found test.txt
[root@origin ~]#
通過df命令就可以查看掛載成功,并可以成功寫入文件到lvm目錄下。
2.2.2 LVM擴(kuò)容
上一步創(chuàng)建的容量為148M囚似,下面將演示將其擴(kuò)展到300M
(1)卸載設(shè)備與掛載點的關(guān)聯(lián)
[root@origin ~]# umount /lvm
[root@origin ~]#
(2)擴(kuò)展邏輯卷
把上一個實驗中的邏輯卷 vo 擴(kuò)展至 300MB
[root@origin ~]# lvextend -L 300M /dev/storage/vo
Extending logical volume vo to 300.00 MiB
Logical volume vo successfully resized
[root@origin ~]# lvdisplay
--- Logical volume ---
LV Path /dev/storage/vo
LV Name vo
VG Name storage
LV UUID qziHT9-1qTT-1CRa-TIoq-cosz-Hhn0-jX5CVm
LV Write Access read/write
LV Creation host, time origin, 2020-01-01 22:14:18 +0800
LV Status available
'#' open 0
LV Size 300.00 MiB
...省略部分內(nèi)容
可以看到擴(kuò)展后/dev/storage/vo邏輯卷大小為300M剩拢。
(3)檢查硬盤完整性并重置硬盤容量
[root@origin ~]# e2fsck -f /dev/storage/vo
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/storage/vo: 12/38000 files (0.0% non-contiguous), 10455/151552 blocks
[root@origin ~]# resize2fs /dev/storage/vo
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/storage/vo to 307200 (1k) blocks.
The filesystem on /dev/storage/vo is now 307200 blocks long.
[root@origin ~]#
(4)重新掛載設(shè)備
[root@origin ~]# mount -a
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 140K 914M 1% /dev/shm
tmpfs 914M 9.0M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 119M 379M 24% /boot
/dev/sr0 3.9G 3.9G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/storage-vo 287M 2.1M 266M 1% /lvm
[root@origin ~]#
可以看到擴(kuò)容后,lvm目錄的大小為300M(上圖實際顯示為287M)饶唤。
這樣就完成了邏輯卷的擴(kuò)容徐伐。
2.2.3 LVM縮小容
相較于擴(kuò)容邏輯卷,在對邏輯卷進(jìn)行縮容操作時募狂,其丟失數(shù)據(jù)的風(fēng)險更大办素,所以在生產(chǎn)環(huán)境中一定要提前備份數(shù)據(jù)。
為了保證數(shù)據(jù)安全性祸穷,Linux系統(tǒng)規(guī)定性穿,在對LVM邏輯卷進(jìn)行縮容操作之前,要先檢查文件系統(tǒng)的完整性雷滚。
上一步擴(kuò)容后lvm容量為300M需曾,本次演示將其縮容到100M,步驟如下:
(1)卸載文件系統(tǒng)
[root@origin ~]# umount /lvm
[root@origin ~]#
(2)檢查文件系統(tǒng)完整性
[root@origin ~]# e2fsck -f /dev/storage/vo
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/storage/vo: 12/76000 files (0.0% non-contiguous), 15761/307200 blocks
[root@origin ~]#
(3)縮容邏輯卷
把邏輯卷 vo 的容量減小到 100MB
[root@origin ~]# resize2fs /dev/storage/vo 100M
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/storage/vo to 102400 (1k) blocks.
The filesystem on /dev/storage/vo is now 102400 blocks long.
[root@origin ~]# lvreduce -L 100M /dev/storage/vo
WARNING: Reducing active logical volume to 100.00 MiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce vo? [y/n]: y
Reducing logical volume vo to 100.00 MiB
Logical volume vo successfully resized
[root@origin ~]#
(4)重新掛載文件系統(tǒng)
[root@origin ~]# mount -a
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 4.5G 14G 26% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 140K 914M 1% /dev/shm
tmpfs 914M 9.0M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sda1 497M 119M 379M 24% /boot
/dev/sr0 3.9G 3.9G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/storage-vo 93M 1.6M 85M 2% /lvm
[root@origin ~]#
可以看到lvm目錄已經(jīng)縮小到93M祈远,這樣就完成了邏輯卷的縮容操作呆万。
2.2.4 LVM快照功能
邏輯卷快照功能就類似于還原操作系統(tǒng),可以將邏輯卷狀態(tài)還原到指定時間點绊含。
LVM快照功能有2個特點:快照卷只能使用一次桑嘶,一旦執(zhí)行還原操作后立即自動刪除;快照卷的容量必須等同于邏輯卷的容量防止數(shù)據(jù)丟失躬充。
(1)查看當(dāng)前卷組信息
[root@origin ~]# vgdisplay
--- Volume group ---
VG Name storage
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 1.99 GiB
PE Size 4.00 MiB
Total PE 510
Alloc PE / Size 25 / 100.00 MiB
Free PE / Size 485 / 1.89 GiB
...省略部分內(nèi)容
可以看到卷組中已經(jīng)使用了100M逃顶,空閑容量還有1.89G。(Alloc PE / Size 25 / 100.00 MiB充甚, Free PE / Size 485 / 1.89 GiB)
(2)生成快照卷
[root@origin ~]# lvcreate -L 100M -s -n SNAP /dev/storage/vo
Logical volume "SNAP" created
[root@origin ~]# lvdisplay
--- Logical volume ---
LV Path /dev/storage/vo
LV Name vo
VG Name storage
LV UUID qziHT9-1qTT-1CRa-TIoq-cosz-Hhn0-jX5CVm
LV Write Access read/write
LV Creation host, time origin, 2020-01-01 22:14:18 +0800
LV snapshot status source of
SNAP [active]
LV Status available
'#' open 1
LV Size 100.00 MiB
Current LE 25
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
--- Logical volume ---
LV Path /dev/storage/SNAP
LV Name SNAP
VG Name storage
LV UUID TVfDRL-LnYd-z76K-fOuS-AD3C-Sw49-7jPgPo
LV Write Access read/write
LV Creation host, time origin, 2020-01-01 22:40:10 +0800
LV snapshot status active destination for vo
LV Status available
'#' open 0
LV Size 100.00 MiB
Current LE 25
COW-table size 100.00 MiB
COW-table LE 25
Allocated to snapshot 0.01%
Snapshot chunk size 4.00 KiB
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:3
...省略部分內(nèi)容
通過lvcreate命令生成一個名為SNAP的快照邏輯卷以政。此時邏輯卷的存儲空間占用量為0.01%。(Allocated to snapshot 0.01%)
(3)邏輯卷中添加文件伴找,查看快照卷空間使用量
[root@origin ~]# dd if=/dev/zero of=/lvm/files count=1 bs=50M
1+0 records in
1+0 records out
52428800 bytes (52 MB) copied, 0.289668 s, 181 MB/s
[root@origin ~]# ls /lvm/
files lost+found test.txt
[root@origin ~]# df -h
Filesystem Size Used Avail Use% Mounted on
...省略部分內(nèi)容
/dev/mapper/storage-vo 93M 52M 35M 61% /lvm
[root@origin ~]# lvdisplay
...省略部分內(nèi)容
--- Logical volume ---
LV Path /dev/storage/SNAP
LV Name SNAP
VG Name storage
LV UUID TVfDRL-LnYd-z76K-fOuS-AD3C-Sw49-7jPgPo
LV Write Access read/write
LV Creation host, time origin, 2020-01-01 22:40:10 +0800
LV snapshot status active destination for vo
LV Status available
'#' open 0
LV Size 100.00 MiB
Current LE 25
COW-table size 100.00 MiB
COW-table LE 25
Allocated to snapshot 50.29%
Snapshot chunk size 4.00 KiB
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:3
...省略部分內(nèi)容
在邏輯卷所掛載的目錄中創(chuàng)建一個50MB 的垃圾文件洪囤,然后再查看快照卷/dev/storage/SNAP和邏輯卷/dev/storage/vo的狀態(tài)〔钣停可以發(fā)現(xiàn)存儲空間的占用量都上升了估脆,快照卷占用量為:Allocated to snapshot 50.29%。
(4)通過快照卷還原邏輯卷
通過剛才創(chuàng)建的/dev/storage/SNAP快照卷衰倦,還原邏輯卷/dev/storage/vo的狀態(tài)袒炉。
還原之前先取消目錄掛載
[root@origin ~]# umount /lvm/
[root@origin ~]# lvconvert --merge /dev/storage/SNAP
Merging of volume SNAP started.
vo: Merged: 72.9%
vo: Merged: 100.0%
Merge of snapshot into logical volume vo has finished.
Logical volume "SNAP" successfully removed
[root@origin ~]#
可以看到還原邏輯卷后,快照卷自動刪除了樊零,通過lvdisplay命令查看也不會再有/dev/storage/SNAP 我磁。
(5)重新掛載邏輯卷并查看文件
[root@origin ~]# mount -a
[root@origin ~]# ls /lvm/
lost+found test.txt
[root@origin ~]#
可以看到孽文,還原之后剛才創(chuàng)建files文件不見了,這樣就把邏輯卷還原到了創(chuàng)建快照時的狀態(tài)夺艰。
2.2.5 刪除邏輯卷
當(dāng)生產(chǎn)環(huán)境中想要重新部署LVM或者不再需要使用 LVM 時芋哭,可以刪除LVM。
需要提前備份好重要的數(shù)據(jù)信息郁副,然后依次刪除邏輯卷减牺、卷組、物理卷設(shè)備存谎,順序不可顛倒烹植。
(1)取消掛載
[root@origin ~]# umount /lvm/
取消邏輯卷與目錄的掛載關(guān)聯(lián),刪除配置文件中永久生效的設(shè)備參數(shù)愕贡,找到之前添加在/etc/fstab文件中的一行“/dev/storage/vo /lvm ext4 defaults 0 0”并刪除草雕。
(2)刪除邏輯卷
[root@origin ~]# lvremove /dev/storage/vo
Do you really want to remove active logical volume vo? [y/n]: y
Logical volume "vo" successfully removed
[root@origin ~]#
(3)刪除卷組
[root@origin ~]# vgremove storage
Volume group "storage" successfully removed
[root@origin ~]#
只寫卷組名稱即可,不需要設(shè)備的絕對路徑固以。
(4)刪除物理卷
[root@origin ~]# pvremove /dev/sdb /dev/sdc
Labels on physical volume "/dev/sdb" successfully wiped
Labels on physical volume "/dev/sdc" successfully wiped
[root@origin ~]#
在上述操作執(zhí)行完畢之后墩虹,再執(zhí)行 lvdisplay、vgdisplay憨琳、pvdisplay 命令來查看 LVM 的信 息時就不會再看到信息了诫钓,說明刪除成功。
通過上文和本文的演示篙螟,基本掌握了centos7下磁盤管理相關(guān)操作菌湃,如果非運維人員不一定要掌握的非常深刻,理解即可遍略。
本文講了很多磁盤相關(guān)的命令惧所,需要多敲幾篇自然就熟悉了。下一篇文章再補充講解下SSH服務(wù)相關(guān)的知識绪杏,然后就開始講解應(yīng)用服務(wù)的部署和使用了(如apache下愈、郵件系統(tǒng)、mysql蕾久、動態(tài)網(wǎng)站部署等)势似。