天天看點

Linux陣列 RAID詳解

轉載自: http://molinux.blog.51cto.com/2536040/516008

主要内容:(筆記總結--會不定時補充、修改,如有錯誤,歡迎指正探讨) 

  一、 RAID詳解

  二、 mdadm工具介紹

  三、 建立一個RAID的基本過程

  四、 磁盤陣列的管理

  五、 RAID優化

RAID詳解:

  描述:RAID:(Redundant Arrays of indenpensive Disks) 獨立磁盤備援陣列: 磁盤陣列是把多個磁盤組成一個陣列,當作單一磁盤使用,它将資料以分段(striping)的方式儲存在不同的磁盤中,存取資料時,陣列中的相關磁盤一起動作,大幅減低資料的存取時間,同時有更佳的空間使用率。磁盤陣列利用的不同的技術,稱為RAID level,不同的level針對不同的系統及應用,以解決資料安全的問題。簡單來說,RAID把多個硬碟組合成為一個邏輯扇區,是以,作業系統隻會把它當作一個硬碟。

  一般高性能的磁盤陣列都是以硬體的形式來達成,進一步的把磁盤存取控制及磁盤陣列結合在一個控制器(RAID controler)或控制卡上,針對不同的使用者解決人們對磁盤輸輸入輸出系統的四大要求: 

  (1)增加存取速度, 

  (2)容錯(fault tolerance),即安全性 

  (3)有效的利用磁盤使用率; 

  (4)盡量的平衡CPU,記憶體及磁盤的性能差異,提高主機的整體工作性能。

可提供的功能:

   1.備援(容錯) 

   2.性能提升

RAID分類:    

1. 硬體RAID:用RAId接口卡來實作;需要核心支援其驅動,并且該類裝置裝置顯示為SCSI裝置,代号為/dev/sd*

2. 軟體RAID:用核心中的MD(multiple devices)子產品實作,該類裝置在/etc/下表示為:md*;在現在的RH 5版本中使用mdadm工具管理軟RAID;(雖然來說可以用軟體模拟實作raid,但是相對對磁盤控制的功能及性能不如硬體實作的好,生産環境中最好使用硬體raid

幾種常見RAID類型描述:

  圖示:                                 

Linux陣列 RAID詳解

1. RAID-0 :striping(條帶模式),至少需要兩塊磁盤,做RAID分區的大小最好是相同的(可以充分發揮并優勢);而資料分散存儲于不同的磁盤上,在讀寫的時候可以實作并發,是以相對其讀寫性能最好;但是沒有容錯功能,任何一個磁盤的損壞将損壞全部資料;

2. RAID-1 :mirroring(鏡像卷),至少需要兩塊硬碟,raid大小等于兩個raid分區中最小的容量(最好将分區大小分為一樣),可增加熱備盤提供一定的備份能力;資料有備援,在存儲時同時寫入兩塊硬碟,實作了資料備份;但相對降低了寫入性能,但是讀取資料時可以并發,幾乎類似于raid-0的讀取效率;

3. RAID-5 :需要三塊或以上硬碟,可以提供熱備盤實作故障的恢複;采用奇偶效驗,可靠性強,且隻有同時損壞兩塊硬碟時資料才會完全損壞,隻損壞一塊硬碟時,系統會根據存儲的奇偶校驗位重建資料,臨時提供服務;此時如果有熱備盤,系統還會自動在熱備盤上重建故障磁盤上的資料;

    存儲方式:簡單來說就是,磁盤陣列的第一個磁盤分段是校驗值,第二個磁盤至後一個磁盤再折回第一個磁盤的分段是資料,然後第二個磁盤的分段是校驗值,從第三個磁盤再折回第二個磁盤的分段是資料,以此類推,直到放完資料為止。這樣資料與校驗值的循環分離存儲就可以達到一定的故障重建功能;但是raid-5的控制較為複雜,且計算大量的校驗碼,可能給系統造成額外計算的負擔(軟raid來說,硬體有自己的資料處理能力)

注:RAID中的容錯表示即使磁盤故障,資料仍能保持完整,可讓系統存取到正确的資料,而SCSI的磁盤陣列更可在工作中抽換磁盤,并可自動重建故障磁盤的資料。

   熱備份(hot spare or hot standby driver):為了加強容錯的功能以及使系統在磁盤故障的情況下能迅速的重建資料,以維持系統的性能,一般的磁盤陣列系統都可使用熱備份(hot spare or hot standby driver)的功能,所謂熱備份是在建立(configure) 磁盤陣列系統的時候,将其中一磁盤指定為後備磁盤,該磁盤在平常并不操作,但若陣列中某一磁盤發生故障時,磁盤陣列即以後備磁盤取代故障磁盤,并自動将故障磁盤的資料重建(rebuild)在後備磁盤之上,因為反應快速,加上快取記憶體減少了磁盤的存取, 是以資料重建很快即可完成,對系統的性能影響很小。

   在任何時候都不要用同一個硬碟上的多個區來做RAID,那樣不僅不能提高系統的性能,反而會大大降低整體系統的系能;

   對上面幾種常用的RAID類型分析後,可知,RAID-0主要可以提高磁盤性能,RAID-1主要可以實作備份容錯(RAID-5由于控制機制複雜在此暫不使用),是以可以在實際生産環境下考慮結合RAID-0和RAID-1來實作磁盤存儲系統的高性能、高容錯。

    下面圖示的兩種raid結合方式解析:

Linux陣列 RAID詳解
Linux陣列 RAID詳解

    對于一:底層分别用有兩塊硬碟的raid0實作高并發,再集合兩個raid0組實作備援;下層的任意一個raid0組中有任意一塊硬碟會使改組失效,但是兩外一個組仍能提供全部資料;

    對于二:底層用raid-1實作數備援,上層用raid-2實作高并發,該種結構中任意一個硬碟的故障,不對本組整體資料工作構成破壞性影響;是以感覺該種方案更優異,在實際生産中有部分應用(具體配置過程再文章最後附);

mdadm工具介紹:

  描述:

    mdadm(multiple devices admin)是 linux下标準的的軟raid管理工具,是一個模式化工具(在不同的模式下);程式工作在記憶體使用者程式區,為使用者提供RAID接口來操作核心的子產品,實作各種功能;

RedHat已經内置了該工具;官方最新的版本應該是3.2,需要最新版本可以到官方網站下載下傳或 http://www.kernel.org/pub/linux/utils/raid/mdadm/ 下載下傳源碼包進行編譯安裝(官網一直打不開o(╯□╰)o).

實驗環境:RedHhat5.4 ;mdadm版本為v2.6.9 ;

   可能不同的版本選項等略有變動,使用時請注意對照自己版本的man文檔;

基本文法:

  # mdadm [mode] <raid-device> [options] <component-devices>

目前支援的模式:

  LINEAR(線性模式)、RAID0(striping條帶模式)、RAID1(mirroring)、 RAID-4、RAID-5、 RAID-6、 RAID-10、 MULTIPATH和FAULTY

  LINEAR:線性模式,該模式不是raid的标準模式,其主要作用是可以實作将幾塊小的硬碟組合為一塊大硬碟來使用;數組存儲時一次存滿一個硬碟在使用下一個硬碟;對上層來說操作的是一個大硬碟

模式(7種):

   Assemble:裝配模式:加入一個以前定義的陣列;可以使挺值得陣列或從其他主機移出的陣列

   Build:  建立:建立一個沒有超級塊的陣列

   Create: 建立一個新的陣列,每個裝置具有超級塊

   Follow or Monitor: 監控RAID的狀态,一般隻對RAID-1/4/5/6/10等有備援功能的模式來使用

   Grow:(Grow or shrink) 改變RAID的容量或陣列中的裝置數目;收縮一般指的是資料收縮或重建;

   Manage: 管理陣列(如添加spare盤和删除故障盤)

   Incremental Assembly:添加一個裝置到一個适當的陣列。

   Misc:  允許單獨對陣列中的某個裝置進行操作(如抹去superblocks 或停止陣列)

   Auto-detect: 此模式不作用于特定的裝置或陣列,而是要求在Linux核心啟動任何自動檢測到的陣列。

OPTIONS:

選擇一個模式的選項:(Options for selecting a mode)

-A, --assemble: 加入并開啟一個以前定義的陣列

-B, --build:   建立一個沒有超級塊的陣列(Build a legacy array without superblocks.)

-C, --create:  建立一個新的陣列

-F, --follow, --monitor:選擇監控(Monitor)模式

-G, --grow:   改變激活陣列的大小或形态

-I, --incremental: 添加一個單獨的裝置到合适的陣列,并可能啟動陣列

--auto-detect:   請求核心啟動任何自動檢測到的陣列

不特定于一個模式的選項:(Options that are not mode-specific)

-c, --config=: 指定配置檔案,預設為 /etc/mdadm.conf

-s, --scan:  掃描配置檔案或 /proc/mdstat以搜尋丢失的資訊。預設配置檔案:/etc/mdadm.conf

-h, --help:  幫助資訊,用在以上選項後,則顯示該選項資訊

-v, --verbose: 顯示細節,一般隻能跟 --detile 或 --examine一起使用,顯示中級的資訊;

-b, --brief:  較少的細節。用于 --detail 和 --examine 選項

--help-options: 顯示更詳細的幫助

-V, --version: 版本資訊

-q,--quit:   安靜模式;加上該選項能使mdadm不顯示純消息性的資訊,除非那是一個重要的報告;

create build 或grow時使用的選項:

-n, --raid-devices=: 指定陣列中活動的device數目,不包括spare磁盤,這個數目隻能由--grow修改

-x, --spare-devices=:指定初始陣列的備援device 數目即spare device數目;

-c, --chunk=:  Specify chunk size of kibibytes. 預設為 64. chunk-size是一個重要的參數,決定了一次向陣列中每個磁盤寫入資料的量

  (Chunk :,可以了解為raid分儲資料時每個資料段的大小(通常為32/64/128等這類數字大小);合理的選擇chunk大小非常重要,若chunk過大可能一塊磁盤上的帶區空間就可以滿足大部分的I/O操作,使得資料的讀寫隻局限于一塊硬碟上,這便不能充分發揮RAID并發的優勢;如果chunk設定過小,任何很小的I/O指令都 可能引發大量的讀寫操作,不能良好發揮并發性能,占用過多的控制器總線帶寬,也影響了陣列的整體性能。是以,在建立帶區時,我們應該根據實際應用的需要,合理的選擇帶區大小。)

-z, --size=:組建RAID1/4/5/6後從每個device擷取的空間總數;但是大小必須為chunk的倍數,還需要在每個裝置最後給RAID的superblock留至少128KB的大小。

--rounding=: Specify rounding factor for linear array (==chunk size)

-l, --level=: 設定 raid level.raid的幾倍

--create:   可用:linear, raid0, 0, stripe, raid1,1, mirror, raid4, 4, raid5, 5, raid6, 6, multipath, mp.

--build:   可用:linear, raid0, 0, stripe.

-p, --layout=:設定raid5 和raid10的奇偶校驗規則;并且控制故障的故障模式;其中RAID-5的奇偶校驗可以在設定為::eft-asymmetric, left-symmetric, right-asymmetric, right-symmetric, la, ra, ls, rs.預設為left-symmetric

--parity:   類似于--layout=

--assume-clean:目前僅用于 --build 選項

-R, --run:  陣列中的某一部分出現在其他陣列或檔案系統中時,mdadm會确認該陣列。此選項将不作确認。

-f, --force: 通常mdadm不允許隻用一個device 建立陣列,而且此時建立raid5時會使用一個device作為missing drive。此選項正相反

-N,--name=: 設定陣列的名稱

管理模式選項(For Manage mode):

-a, --add: 添加列出的裝置到一個工作的陣列中;當陣列處于降級狀态(故障狀态),你添加一個裝置,該裝置将作為備用裝置并且在該備用裝置上開始資料重建。

-r, --remove:從陣列中移除列出的裝置,并且該裝置不能處于活動狀态(是備援盤或故障盤);

-f,--fail:将列出的裝置标記為faulty狀态,标記後就可以移除裝置;(可以作為故障恢複的測試手段)

--set-faulty:同上

監控模式選項(For Monitor mode):

-m, --mail: 設定一個mail位址,在報警時給該mail發信;該位址可寫入conf檔案,在啟動陣列是生效

-p, --program, --alert:當檢測到一個事件時運作一個指定的程式

-y, --syslog: 設定所有的事件記錄于syslog中

-t, --test:  給啟動時發現的每個陣列生成test警告資訊;該資訊傳遞給mail或報警程式;(以此來測試報警資訊是否能正确接收)

MISC模式選項:

  Usage: mdadm options ...  devices ...

-Q, --query: 檢視一個device,判斷它為一個 md device 或是 一個 md 陣列的一部分

-D, --detail: 列印一個或多個md device 的詳細資訊

-E, --examine:列印 device 上的 md superblock 的内容

建立一個軟RAID的基本過程:

(以三個分區模拟建立一個raid5為操作示例,對于level0/1的How-To不再寫出,如果了解原理,配置真的很簡單;)

1.  生成raid組成:

  linux中陣列組成單元是分區,分區可以是整個裝置也可以是裝置多個分區中的一個;在fdisk分區後需要将分區标志改為Linux raid auto類型;

# 分區後如下:

Device  Boot      Start         End      Blocks   Id  System 

/dev/sdb1               1         609     4891761   fd  Linux raid autodetect 

/dev/sdc1               1         609     4891761   fd  Linux raid autodetect 

/dev/sdd1               1         609     4891761   fd  Linux raid autodetect 

2.  建立磁盤陣列

# mdadm -C /dev/md0 -a yes -l 5 -n 3 /dev/sd{b,c,d}1 

mdadm: array /dev/md0 started. 

-C :建立一個陣列,後跟陣列名稱

-l :指定陣列的級别;

-n :指定陣列中活動devices的數目

3.  檢視陣列狀态

[[email protected] ~]# cat /proc/mdstat  

Personalities : [raid6] [raid5] [raid4]  

md0 : active raid5 sdd1[2] sdc1[1] sdb1[0] 

      9783296 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU] 

unused devices: <none> 

  通過cat /proc/mdstat資訊檢視所有運作的RAID陣列的狀态,在第一行中首先是MD的裝置名md0,active和inactive選項表示陣列是否能讀/寫,接着是陣列的RAID級别raid5,後面是屬于陣列的塊裝置,方括号[]裡的數字表示裝置在陣列中的序号,(S)表示其是熱備盤,(F)表示這個磁盤是 faulty狀态。下一行中首先是陣列的大小,用塊數來表示;後面有chunk-size的大小,然後是layout類型,不同RAID級别的 layout類型不同,[3/3] [UUU]表示陣列有3個磁盤并且3個磁盤都是正常運作的,而[2/3]和[_UU] 表示陣列有3個磁盤中2個是正常運作的,下劃線對應的那個位置的磁盤是faulty狀态的。

檢視陣列的詳細資訊:

[[email protected] ~]# mdadm --detail /dev/md0 

/dev/md0: 

        Version : 0.90 

  Creation Time : Tue Mar 15 08:17:52 2011 

     Raid Level : raid5 

     Array Size : 9783296 (9.33 GiB 10.02 GB) 

  Used Dev Size : 4891648 (4.67 GiB 5.01 GB) 

   Raid Devices : 3 

  Total Devices : 3 

Preferred Minor : 0 

    Persistence : Superblock is persistent 

    Update Time : Tue Mar 15 08:20:25 2011 

          State : clean 

Active Devices : 3 

Working Devices : 3 

Failed Devices : 0 

  Spare Devices : 0 

         Layout : left-symmetric    校驗規則

     Chunk Size : 64K 

           UUID : e0d929d1:69d7aacd:5ffcdf9b:c1aaf02d 

         Events : 0.2 

    Number   Major   Minor   RaidDevice State 

       0       8       17        0      active sync   /dev/sdb1 

       1       8       33        1      active sync   /dev/sdc1 

       2       8       49        2      active sync   /dev/sdd1 

4. mdadm.conf配置:

   mdadm.conf是該軟體的預設配置檔案,主要作用是友善跟蹤軟RAID的配置,尤其是可以配置監視和事件上報選項。其中寫入每一個陣列組成的詳細情況,用于在下次開啟陣列後依據此檔案重新裝配(assemble)開啟陣列,否則就需要在開啟時手動定義陣列中的成員;當然是推薦建立該檔案,防止出現意外情況,具體的詳細配置及示例可以參看man文檔# man mdadm.conf 

[[email protected] ~]# echo "DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 " >> /etc/mdadm.conf  

[[email protected] ~]# mdadm -Ds >> /etc/mdadm.conf   

[[email protected] ~]# echo "MAILADDR  [email protected] " >> /etc/mdadm.conf   

MAILADDR指定出問題時監控系統發郵件的位址 

# 格式如下: 

DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1  

ARRAY /dev/md0 level=raid5 num-devices=3 metadata=0.90 UUID=e0d929d1:69d7aacd:5ffcdf9b:c1aaf02d 

MAILADDR  [email protected]  

#DEVICE行指明:依據該配置檔案開啟陣列時,去查找那些裝置的超級快資訊;若沒有該行,

  就去搜尋mtab中所有裝置分區的超級快資訊;是以改行可以不寫,但是隻要寫上,以後添加spare

裝置時就需要同時修改改行資訊;

#ARRAY 行指明raid的名稱,級别uuid等基本資訊

#可以添加諸如MAILADDR及PROGRAM等指定monitor狀态下的監控報警資訊;

磁盤陣列的管理:

  可以在manage模式下對磁盤進行各種管理工作;

給raid-5新增一個spare盤:

[[email protected] ~]# mdadm -a /dev/md0 /dev/sda5  

mdadm: added /dev/sda5 

此時檢視狀态: 

[[email protected] ~]# cat /proc/mdstat  

Personalities : [raid6] [raid5] [raid4]  

md0 : active raid5 sda5[3](S) sdd1[2] sdc1[1] sdb1[0] 

      9783296 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU] 

unused devices: <none> 

模拟硬碟故障:

[[email protected] ~]# mdadm -f /dev/md0  /dev/sdd1 

mdadm: set /dev/sdd1 faulty in /dev/md0 

# 此時檢視狀态,發現概念剛才的熱備盤已經頂替了故障盤的位置,

# 并且進度條顯示資料重建過程: 

[[email protected] ~]# cat /proc/mdstat  

Personalities : [raid6] [raid5] [raid4]  

md0 : active raid5 sda5[3] sdd1[4](F) sdc1[1] sdb1[0] 

      9783296 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_] 

      [>....................]  recovery =  1.3% (66912/4891648) finish=6.0min speed=13382K/sec 

unused devices: <none> 

熱移除故障的硬碟:

[[email protected] ~]# mdadm -r /dev/md0  /dev/sdd1 

mdadm: hot removed /dev/sdd1 

[[email protected] ~]# cat /proc/mdstat  

Personalities : [raid6] [raid5] [raid4]  

md0 : active raid5 sda5[3] sdc1[1] sdb1[0] 

      9783296 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_] 

      [===>.................]  recovery = 16.1% (792136/4891648) finish=4.6min speed=14828K/sec 

unused devices: <none> 

  對于有備援的raid形式,在單一磁盤故障時一般能在一段時間内重建資料;但是資料量非常大時,重建會非常緩慢,且重建過程系統壓力比較大,此時需要多關注系統負載,防止重建過程出現錯誤;在熱移除故障盤一戶,也需要盡快的換上新硬碟,并且添加spare盤;在故障修複,重建重建之後,需要重新生成配置檔案,防止在下次開啟時,按照最初的定義模式開啟;

停止RAID:

# 指定停止某個陣列 

[[email protected] ~]# mdadm -S /dev/md0  

# 停止配置檔案中定義的所有陣列 

[[email protected] ~]# mdadm -Ss 

mdadm: stopped /dev/md0 

# -s –scan去查詢配置檔案或沒有配置檔案時查詢mdstat中的所有陣列

開啟RAID:

[[email protected] ~]# mdadm -As  

mdadm: /dev/md0 has been started with 2 drives (out of 3). 

# -s –scan:根據配置檔案開啟所有的陣列,此時由于故障恢複過,

# 但是由于未重建配置檔案,陣列我不能加載上新添加的硬碟;(需要停掉,重新手動指定) 

[[email protected] ~]# cat /proc/mdstat  

Personalities : [raid6] [raid5] [raid4]  

md0 : active raid5 sdb1[0] sdc1[1] 

      9783296 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_] 

unused devices: <none> 

若此時沒有配置檔案,就需要手動指定裝置名稱: 

[ro[email protected] ~]# mdadm -A  /dev/md0 /dev/sdb1 /dev/sdc1  /dev/sda5  

mdadm: /dev/md0 has been started with 3 drives. 

# 注:将一個raid裝置添加入md陣列後,md的資訊會寫入到該裝置分區的superblock中;

# 在手動裝配時;mdadm工具會自動驗證陣列配置是否合法,并且做出相應的動作; 

  若新接手一個raid,沒有配置檔案,或忘記裝置的準确組成,就需要按分區逐個檢查是否是raid裝置及其他資訊,然後根據資訊裝配陣列:

[[email protected] ~]# mdadm -E /dev/sdb1 

/dev/sdb1: 

          Magic : a92b4efc 

        Version : 0.90.00 

           UUID : e0d929d1:69d7aacd:5ffcdf9b:c1aaf02d 

  Creation Time : Tue Mar 15 08:17:52 2011 

     Raid Level : raid5 

  Used Dev Size : 4891648 (4.67 GiB 5.01 GB) 

     Array Size : 9783296 (9.33 GiB 10.02 GB) 

   Raid Devices : 3 

  Total Devices : 3 

Preferred Minor : 0 

    Update Time : Tue Mar 15 09:25:10 2011 

          State : clean 

Active Devices : 3 

Working Devices : 3 

Failed Devices : 0 

  Spare Devices : 0 

       Checksum : b0cd088f - correct 

         Events : 8 

         Layout : left-symmetric 

     Chunk Size : 64K 

      Number   Major   Minor   RaidDevice State 

this     0       8       17        0      active sync   /dev/sdb1 

   0     0       8       17        0      active sync   /dev/sdb1 

   1     1       8       33        1      active sync   /dev/sdc1 

   2     2       8        5        2      active sync   /dev/sda5 

# 該處顯示出的是該分區superblock中包含的md資訊;沒有配置檔案時,可以依據該資訊裝配md;

删除陣列:

   若需要徹底清除這個陣列:

[[email protected] ~]# umount /dev/md0    

mdadm -Ss /dev/md0    

[[email protected] ~]# mdadm --zero-superblock /dev/sd{b,c,d}1    

# --zero-superblock 加上該選項時,會判斷如果該陣列是否包 

# 含一個有效的陣列超級快,若有則将該超級塊中陣列資訊抹除。  

[[email protected] ~]# rm /etc/mdadm.conf  

RAID優化:

(1) 設定stride值

The stride is the software RAID device's chunk-size in filesystem blocks.For example,with an ext3 filesystem that will have an 4KB block size on a RAID device with a chunk-size of 64KB, the stride should be set to 16:(翻譯的很糾結,就貼上教材原文了。)

mk2fs -j -b 4096 -E stride=16 /dev/md0 

# 設定時,需要用-E選項進行擴充

設定良好的stride值,可以在後期使用時,減少寫入資料時對資料塊計算的負擔,進而提高RAID性能;

附:RAID 1-0雙層架構的方法:

首先建立兩個底層RAID-1

[[email protected] ~]# mdadm -C /dev/md0 -a yes -l 1 -n 2 /dev/sd[bc]1  

mdadm: array /dev/md0 started. 

[[email protected] ~]# mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sd[bc]2 

mdadm: array /dev/md1 started. 

用兩個RAID-1實作上層RAID-0:

[[email protected] ~]# mdadm -C /dev/md2 -a yes -l 0 -n 2 /dev/md[01]   

mdadm: array /dev/md2 started. 

檢視陣列狀态:

[[email protected] ~]# cat /proc/mdstat  

Personalities : [raid6] [raid5] [raid4] [raid0] [raid1]  

md2 : active raid0 md0[0] md1[1] 

      9783232 blocks 64k chunks 

md1 : active raid1 sdb2[0] sdc2[1] 

      4891712 blocks [2/2] [UU] 

md0 : active raid1 sdb1[0] sdc1[1] 

      4891648 blocks [2/2] [UU] 

unused devices: <none> 

建立配置檔案:

[[email protected] ~]# mdadm -Ds > /etc/mdadm.conf 

停止與開啟陣列:

[[email protected] ~]# mdadm -Ss 

mdadm: stopped /dev/md2 

mdadm: stopped /dev/md1 

mdadm: stopped /dev/md0 

[[email protected] ~]# mdadm -As 

mdadm: /dev/md0 has been started with 2 drives. 

mdadm: /dev/md1 has been started with 2 drives. 

mdadm: /dev/md2 has been started with 2 drives. 

##上述關閉與開啟過程,系統能隻能識别層級,關閉先關閉上層,

##後開啟上層;防止了沖突;

參考:

  軟RAID0的技術概要及實作 :  http://www.linuxsir.org/main/node/279

  維基百科--RAID :   http://zh.wikipedia.org/zh-cn/Raid  

     http://www.linuxidc.com/Linux/2009-12/23394p6.htm

本文出自 “Mo” 部落格,請務必保留此出處 http://molinux.blog.51cto.com/2536040/516008

繼續閱讀