軟raid mdadm

由于EFI并不能安裝在RAID中,以上的操作只能確保系統(tǒng)從第一塊硬盤(pán)啟動(dòng),而不能從第二塊硬盤(pán)啟動(dòng)。如果第一塊硬盤(pán)出現(xiàn)問(wèn)題,則系統(tǒng)將不能啟動(dòng)。以下過(guò)程,將使能從第二塊硬盤(pán)啟動(dòng)。當(dāng)?shù)谝粔K硬盤(pán)異常的時(shí)候,系統(tǒng)可以從第二塊硬盤(pán)正常啟動(dòng)。

將/sda1的內(nèi)容,克隆到/sdb1中,如下所示:

dd if=/dev/sda1 of=/dev/sdb1

最后,將/sdb1加入到啟動(dòng)目錄中,如下:

efibootmgr -c -g -d /dev/sdb -p 1 -L "Ubuntu #2" -l '\EFI\Ubuntu\grubx64.efi'
至此,安裝的系統(tǒng)將可以分別從/sda和/sdb硬盤(pán)上啟動(dòng)。

mkfs.ext4 /dev/sda
mkfs.ext4 /dev/sdb
mdadm -C /dev/md0 -a yes -n 2 -l 1 /dev/sda /dev/sdc
mdadm -Ds >/etc/mdadm.conf
mdadm -Ds >/etc/mdadm/mdadm.conf
update-initramfs -u
mkfs.ext4 -F /dev/md0


mdadm --detail --scan

mdadm -Ds

mdadm -Ds >> /etc/mdadm/mdadm.conf

vim /etc/mdadm/mdadm.conf

軟RAID管理命令mdadm詳解
一、創(chuàng)建模式
選項(xiàng):-C
專(zhuān)用選項(xiàng):
-l 級(jí)別
-n 設(shè)備個(gè)數(shù)
-a {yes|no} 自動(dòng)為其創(chuàng)建設(shè)備文件
-c 指定數(shù)據(jù)塊大?。╟hunk)
-x 指定空閑盤(pán)(熱備磁盤(pán))個(gè)數(shù),空閑盤(pán)(熱備磁盤(pán))能在工作盤(pán)損壞后自動(dòng)頂替
注意:創(chuàng)建陣列時(shí),陣列所需磁盤(pán)數(shù)為-n參數(shù)和-x參數(shù)的個(gè)數(shù)和

1、創(chuàng)建raid0:
1.1 創(chuàng)建raid
mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}
注意:用于創(chuàng)建raid的磁盤(pán)分區(qū)類(lèi)型需為fd
1.2 格式化:
mkfs.ext4 /dev/md0
注意:在格式化時(shí),可以指定-E選項(xiàng)下的stride參數(shù)指定條帶是塊大小的多少倍,有在一定程度上提高軟RAID性能,如塊默認(rèn)大小為4k,而條帶大小默認(rèn)為64k,則stride為16,這樣就避免了RAID每次存取數(shù)據(jù)時(shí)都去計(jì)算條帶大小,如:
mkfs.ext4 -E stride=16 -b 4096 /dev/md0
其中stride=chunk/block,為2的n次方
2、創(chuàng)建raid1:
2.1 創(chuàng)建raid
mdadm -C /dev/md1 -a yes -n 2 -l 1 /dev/sdb{5,6}
注意:這個(gè)提示是說(shuō)軟raid不能用作啟動(dòng)分區(qū)。
2.2 格式化:
mkfs.ext4 /dev/md1
3、創(chuàng)建raid5:
由于沒(méi)有磁盤(pán)空間,我將原來(lái)做raid1的測(cè)試磁盤(pán)全部刪除后重新建立四個(gè)分區(qū)用于raid5測(cè)試,分別為sdb5-8
3.1 創(chuàng)建raid5
mdadm -C /dev/md2 -a yes -l 5 -n 3 /dev/sdb{5,6,7}
3.2 格式化:
mkfs.ext4 /dev/md2
3.3 增加熱備磁盤(pán):
mdadm /dev/md2 -a /dev/sdb8
4、查看md狀態(tài):
4.1 查看RAID陣列的詳細(xì)信息:
選項(xiàng): -D = --detail
mdadm -D /dev/md# 查看指定RAID設(shè)備的詳細(xì)信息
4.2 查看raid狀態(tài)
cat /proc/mdstat

注意:在創(chuàng)建raid前,應(yīng)該先查看磁盤(pán)是否被識(shí)別,如果內(nèi)核還為識(shí)別,創(chuàng)建Raid時(shí)會(huì)報(bào)錯(cuò):
cat /proc/partitions
如果沒(méi)有被識(shí)別,可以執(zhí)行命令:
kpartx /dev/sdb或者partprobe/dev/sdb

二、管理模式
選項(xiàng):-a(--add),-d(--del),-r(--remove),-f(--fail)
1、模擬損壞:
mdadm /dev/md1 -f /dev/sdb5
2、移除損壞的磁盤(pán):
mdadm /dev/md1 -r /dev/sdb5
3、添加新的硬盤(pán)到已有陣列:
mdadm /dev/md1 -a /dev/sdb7
注意:
3.1、新增加的硬盤(pán)需要與原硬盤(pán)大小一致
3.2、如果原有陣列缺少工作磁盤(pán)(如raid1只有一塊在工作,raid5只有2塊在工作),這時(shí)新增加的磁盤(pán)直接變?yōu)楣ぷ鞔疟P(pán),如果原有陣列工作正常,則新增加的磁盤(pán)為熱備磁盤(pán)。
4、停止陣列:
選項(xiàng):-S = --stop
mdadm -S /dev/md1

三、監(jiān)控模式
選項(xiàng):-F
不常用,不做詳細(xì)說(shuō)明。
四、增長(zhǎng)模式,用于增加磁盤(pán),為陣列擴(kuò)容:
選項(xiàng):-G
示例,將上述raid5的熱備磁盤(pán)增加到陣列工作磁盤(pán)中
[root@localhost ~]# mdadm -G /dev/md2 -n 4
注意:-n 4 表示使用四塊工作磁盤(pán)
再次使用-D選項(xiàng)查看陣列詳細(xì)信息如下:

mdadm -D /dev/md2

五、裝配模式,軟RAID是基于系統(tǒng)的,當(dāng)原系統(tǒng)損壞了,需要重新裝配RAID
選項(xiàng):-A
示例:將上述已經(jīng)停止的陣列重新裝配:
mdadm -A /dev/md1 /dev/sdb5 /dev/sdb6
實(shí)現(xiàn)自動(dòng)裝配:
mdadm運(yùn)行時(shí)會(huì)自動(dòng)檢查/etc/mdadm.conf 文件并嘗試自動(dòng)裝配,因此第一次配置raid后可以將信息導(dǎo)入到/etc/mdadm.conf 中,命令如下:

[root@localhost ~]# mdadm -Ds >/etc/mdadm.conf

RAID --- 磁盤(pán)陣列,簡(jiǎn)言之,用來(lái)提高硬盤(pán)的利用率和速度
RAID種類(lèi)(理論):
RAID 0 : 讀寫(xiě)性能(最少兩塊硬盤(pán)) --- 硬盤(pán)使用量是所有硬盤(pán)大小之和,性能是所有硬盤(pán)之和
RAID 1 : 讀寫(xiě)性能,冗余性(最少兩塊硬盤(pán)) --- 空間利用率:所有磁盤(pán)中最小的那塊(n/2); 讀性能接近RAID0,寫(xiě)性能較raid 0 弱一些;有 冗余能力
RAID 5 : 讀寫(xiě)性能,冗余性(至少3塊硬盤(pán)) --- 空間利用率:1-1/n .讀性能接近RAID0 ,寫(xiě)性能較RAID0弱一些 . 冗余能力:可接受一塊硬盤(pán)的損壞;
RAID 6 : 讀寫(xiě)性能,冗余性(至少4塊硬盤(pán)) --- 空間利用率:1 - 2/n .讀寫(xiě)性能較RAID5,讀性能比RAID5還要弱一些; 冗余能力:可接受2塊硬盤(pán)損壞;
mdadm 常用參數(shù)解釋

選項(xiàng)(高亮的是很常用的):

-f : fail , 將一個(gè)磁盤(pán)設(shè)置為故障狀態(tài)
-l : LEVEL , 設(shè)置磁盤(pán)陣列的級(jí)別
-r : 移除故障設(shè)備
-a : 添加新設(shè)備進(jìn)入磁盤(pán)陣列
-S : 停止一個(gè)磁盤(pán)陣列
-v : --verbose:顯示細(xì)節(jié)
-D, --detail: 打印一個(gè)或多個(gè)md device 的詳細(xì)信息
-x :--spare-devices 指定一個(gè)備份磁盤(pán),也就是指定初始陣列的冗余device 數(shù)目即spare device數(shù)目;

  • n : 指定磁盤(pán)的個(gè)數(shù)
    -A : --assemble:加入一個(gè)以前定義的陣列
    -B : --build:創(chuàng)建一個(gè)沒(méi)有超級(jí)塊的陣列(Build a legacy array without superblocks.)
    -C : --create:創(chuàng)建一個(gè)新的陣列
    -F : --follow, --monitor:選擇監(jiān)控(Monitor)模式
    -G : --grow:改變激活陣列的大小或形態(tài)
    -I : --incremental:添加一個(gè)單獨(dú)的設(shè)備到合適的陣列,并可能啟動(dòng)陣列
    --auto-detect:請(qǐng)求內(nèi)核啟動(dòng)任何自動(dòng)檢測(cè)到的陣列
    -h : --help:幫助信息,用在以上選項(xiàng)后,則顯示該選項(xiàng)信息
    --help-options:顯示更詳細(xì)的幫助
    -V : --version:打印mdadm的版本信息
    -b : --brief:較少的細(xì)節(jié)。用于 --detail 和 --examine 選項(xiàng)
    -Q : --query:查看一個(gè)device,判斷它為一個(gè) md device 或是 一個(gè) md 陣列的一部分
    -E : --examine:打印 device 上的 md superblock 的內(nèi)容
    -c : --config= :指定配置文件,缺省為 /etc/mdadm.conf
    -s : --scan:掃描配置文件或 /proc/mdstat以搜尋丟失的信息。配置文件/etc/mdadm.conf

使用mdadm 創(chuàng)建RAID (級(jí)別只是修改個(gè)數(shù)字,其他參數(shù)基本一樣..)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容