軟RAID管理命令mdadm詳解

2022-09-06 19:27:13 字數 4394 閱讀 9970

軟raid管理命令mdadm詳解

mdadm是linux下用於建立和管理軟體raid的命令,是乙個模式化命令。但由於現在伺服器一般都帶有raid陣列卡,並且raid陣列卡也很廉價,且由於軟體raid的自身缺陷(不能用作啟動分割槽、使用cpu實現,降低cpu利用率),因此在生產環境下並不適用。但為了學習和了解raid原理和管理,因此仍然進行乙個詳細的講解:

選項:-c

專用選項:

-l 級別

-n 裝置個數

-a 自動為其建立裝置檔案

-c 指定資料塊大小(chunk)

-x 指定空閒盤(熱備磁碟)個數,空閒盤(熱備磁碟)能在工作盤損壞後自動頂替

注意:建立陣列時,陣列所需磁碟數為-n引數和-x引數的個數和

示例:1.1 建立raid

mdadm -c /dev/md0 -a yes -l 0 -n 2 /dev/sdb

注意:用於建立raid的磁碟分割槽型別需為fd

1.2 格式化:

mkfs.ext4 /dev/md0

注意:在格式化時,可以指定-e選項下的stride引數指定條帶是塊大小的多少倍,有在一定程度上提高軟raid效能,如塊預設大小為4k,而條帶大小預設為64k,則stride為16,這樣就避免了raid每次訪問資料時都去計算條帶大小,如:

mkfs.ext4  -e stride=16 -b 4096 /dev/md0

其中stride=chunk/block,為2的n次方

2.1 建立raid

[root@localhost ~]# mdadm -c /dev/md1 -a yes -n 2 -l 1 /dev/sdb

mdadm: note: this array has metadata at the start and

may not be suitable as a boot device.  if you plan to

store '/boot' on this device please ensure that

your boot-loader understands md/v1.x metadata, or use

--metadata=0.90

continue creating array? y

mdadm: defaulting to version 1.2 metadata

mdadm: array /dev/md1 started.

注意:這個提示是說軟raid不能用作啟動分割槽。

2.2 格式化:

[root@localhost ~]# mkfs.ext4  /dev/md1

由於沒有磁碟空間,我將原來做raid1的測試磁碟全部刪除後重新建立四個分割槽用於raid5測試,分別為sdb5-8

3.1 建立raid5

[root@localhost ~]# mdadm -c /dev/md2 -a yes -l 5 -n 3 /dev/sdb

level=raid1 devices=2 ctime=sun jul 14 09:14:25 2013

level=raid1 devices=2 ctime=sun jul 14 09:14:25 2013

level=raid1 devices=2 ctime=sun jul 14 09:14:25 2013

continue creating array? y

mdadm: defaulting to version 1.2 metadata

mdadm: array /dev/md2 started.

注意:由於我的分割槽剛才在raid1上使用過,因此有此提示。

3.2 格式化:

[root@localhost ~]# mkfs.ext4 /dev/md2

3.3 增加熱備磁碟:

[root@localhost ~]# mdadm /dev/md2 -a /dev/sdb8

4.1 檢視raid陣列的詳細資訊:

選項:-d = --detail

mdadm -d /dev/md#   檢視指定raid裝置的詳細資訊

4.2 檢視raid狀態

[root@localhost ~]# cat /proc/mdstat

personalities : [raid0] [raid1]

md0 : active raid0 sdb2[1] sdb1[0]

4206592 blocks super 1.2 512k chunks

md1 : active raid1 sdb6[1] sdb5[0]

2103447 blocks super 1.2 [2/2] [uu]

unused devices:

注意:在建立raid前,應該先檢視磁碟是否被識別,如果核心還為識別,建立raid時會報錯:

cat /proc/partitions

如果沒有被識別,可以執行命令:

kpartx /dev/sdb或者partprobe/dev/sdb

選項:-a(--add),-d(--del),-r(--remove),-f(--fail)

mdadm /dev/md1 -f /dev/sdb5

mdadm /dev/md1 -r /dev/sdb5

mdadm /dev/md1 -a /dev/sdb7

注意:

3.1、新增加的硬碟需要與原硬碟大小一致

3.2、如果原有陣列缺少工作磁碟(如raid1只有一塊在工作,raid5只有2塊在工作),這時新增加的磁碟直接變為工作磁碟,如果原有陣列工作正常,則新增加的磁碟為熱備磁碟。

選項:-s = --stop

mdadm -s /dev/md1

選項:-f

不常用,不做詳細說明。

選項:-g

[root@localhost ~]# mdadm -g /dev/md2  -n 4

注意:-n 4 表示使用四塊工作磁碟

再次使用-d選項檢視陣列詳細資訊如下:

[root@localhost ~]# mdadm -d /dev/md2

……此處略掉部分資訊……

number   major   minor   raiddevice state

0       8       21        0      active sync   /dev/sdb5

1       8       22        1      active sync   /dev/sdb6

3       8       23        2      active sync   /dev/sdb7

4       8       24        3      active sync   /dev/sdb8

選項:-a

mdadm -a /dev/md1 /dev/sdb5 /dev/sdb6

mdadm執行時會自動檢查/etc/mdadm.conf  檔案並嘗試自動裝配,因此第一次配置raid後可以將資訊匯入到/etc/mdadm.conf  中,命令如下:

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

原文

軟RAID管理命令mdadm詳解

軟raid管理命令mdadm詳解 mdadm是linux下用於建立和管理軟體raid的命令,是乙個模式化命令。但由於現在伺服器一般都帶有raid陣列卡,並且raid陣列卡也很廉價,且由於軟體raid的自身缺陷 不能用作啟動分割槽 使用cpu實現,降低cpu利用率 因此在生產環境下並不適用。但為了學習...

mdadm軟RAID的刪除

問題 在伺服器上面新增了一塊有raid資訊的硬碟,直接刪除頭塊資訊會報錯。root qht115 mdadm zero superblock dev sdb1 mdadm couldn t open dev sdb1 for write not zeroing解決方法 需要先刪除raid資訊後再刪除...

raid管理工具 mdadm 管理raid0

mdadm介紹管理軟raid工具 mdadm mdadm是linux下用於建立和管理軟體raid的命令,是乙個模式化命令mdadm 命令的引數 c 建立乙個新陣列 a 啟用磁碟陣列 a 新增裝置到陣列 d 列印陣列裝置詳細資訊 s 掃瞄配置檔案或者 proc mdstat 得到陣列缺失資訊 v 顯示...