<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      mdadm命令詳解

      創建陣列(-C或--create)

      --raid-devices(-n)

      • 功能:指定陣列中成員盤個數。
      • 舉例:mdadm --create /dev/md0 -l5 -n2 /dev/sdb /dev/sdc -x1 /dev/sdd
      • 備注:當創建linear, multipath, raid0和raid1時,允許指定成員盤個數為1,但要使用--force參數。raid4與raid5不允許指定成員盤個數為1。成員盤個數可以通過--grow參數來修改,只有RAID1、RAID5 和RAID6陣列支持。

      --spare-devices (-x)

      • 功能:指定陣列中熱備盤個數。
      • 舉例:mdadm --create /dev/md0 -l5 -n2 /dev/sdb /dev/sdc -x1 /dev/sdd
      • 備注:無

      --size (-z)

      • 功能:創建陣列時,指定每個成員盤使用多大的空間。單位KB。
      • 舉例:mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] -z 4194304
      • 備注:當創建RAID1/4/5/6時,可以指定每個成員盤使用多大的空間。同時磁盤最后要留下128Kb大小空間,用于存放RAID的superblock。如果沒有指定該參數,mdadm將使用最小成員盤的大小指定該值。如果某個成員盤的大小大于最小成員盤1%,將會有警告信息,提示有部分空間沒有被使用。創建陣列時,如果RAID中所有成員盤使用了的空間都小于其本身的大小,那么它們剩余的空間可以通過--grow來擴容。--size=max,mdadm將自動選擇一個適合的最大值,來創建陣列。

      --chunk (-c)

      • 功能:指定條帶大小。單位KB,默認值64KB。
      • 舉例:mdadm --create /dev/md0 -l5 -n2 /dev/sdb /dev/sdc -x1 /dev/sdd -c 128
      • 備注:測試過指定4、8、16、32、64、128、256、1024、2048、4096、8192、16384、32768、65536、131072。最大值尚未測試出來,不知是否有最大值。

      --rounding

      • 功能:指定linear陣列的rounding因子。等價于chunk size,但linear設備的chunk不是條帶分布在所有磁盤上,第一個磁盤分布完后,再分布到第二個磁盤上。
      • 舉例:mdadm --create /dev/md1 -llinear -n2 /dev/sdb /dev/sdc --rounding=128
      • 備注:如果建立raid5,指定該參數為128。mdadm –D獲取詳情時,顯示Chunk Size為128K。

      --level (-l)

      • 功能:設置raid級別。
      • 舉例:mdadm --create /dev/md0 -l5 -n2 /dev/sdb /dev/sdc -x1 /dev/sdd --chunk=128
      • 備注:當創建陣列時,--level參數后面可以跟定的值有linear, raid0, 0, stripe, raid1, 1, mirror, raid4, 4,raid5, 5, raid6, 6, raid10, 10, multipath, mp, faulty(指定faulty沒有創建成功)。其中,存在多個同義值。當--build陣列時,--level參數后面可以跟定的值有linear, stripe, raid0, 0, raid1, multipath, mp, and faulty。該參數不支持--grow。

      --layout (-p)

      • 功能:配置raid5和raid10陣列的數據布局,控制faulty失敗模式。
      • 舉例:mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] -p ra
      • 備注:raid5奇偶校驗塊的布局可以為left-asymmetric, left-symmetric, right-asymmetric, right-sym-metric, la, ra, ls, rs。默認為left-asymmetric。

      --parity

      • 功能:等同于--layout

      --bitmap (-b)

      • 功能:使用bitmap模式記錄RAID陣列有多少個塊已經同步(resync),正常停止RAID后,再將RAID組裝起來時,磁盤上已同步塊不用再次同步。
      • 舉例:mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] --bitmap=internal --force
      • 備注:可以將bitmap記錄在文件中,文件名可以是不存在的,如果文件被用來記錄過bitmap可以通過指定--force參數來清空原來的信息。如果創建陣列的時候指定了文件,那么組裝陣列時,也要指定該文件。如果值為internal,則bitmap將被當作元數據信息,寫入到每個成員盤上面。--grow模式下,如果值為none,則bitmap信息將被清除。
      • 注意:位圖文件只能存儲在ext2或者ext3文件系統上。存儲到其他文件系統上面,可能導致嚴重問題。

      --bitmap-chunk

      • 功能:指定bitmap中的每1個bit位對應RAID中每個數據塊的大小,單位為KB。如--bitmap-chunk=1024,則表示bitmap中1個bit對應RAID中1024K。即如果bitmap中第1個bit為1,代表RAID中第1M的數據在各個磁盤上是不一致的,需要同步。
      • 舉例:mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] --bitmap=internal --bitmap-chunk=1024
      • 備注:使用一個文件存儲位圖時,默認使用最小的。不會小于4,不會超過2^21(2M)。當--bitmap=internal時,成員盤中用用記錄bitmap的空間有個最大值,如果指定的bitmap-chunk過小,則bitmap就會使用過大的空間,如果超過了最大空間,則無法創建成功。如果不指定bitmap-chunk,則會使用bitmap允許的大空間來自動計算出一個bitmap-chunk的最小值。

      --write-mostly(-w)

      • 功能:陣列的成員盤指定該參數后,在應用中該成員盤只進行數據寫,而不從它上面讀取數據。該參數只針對RAID1有效。
      • 舉例:mdadm --create -l1 -n2 /dev/sdi --W /dev/sdj
      • 備注:--create 、–build和—add時,均可指定該參數。
        通過mdadm –D可以查詢到哪個設備指定了該參數。
        Number   Major   Minor   RaidDevice State
        0       8      128        0      active sync   /dev/sdi
        1       8      144        1      active sync writemostly   /dev/sdj
          通過cat /proc/mdstat也可以查看該信息。
        md1 : active raid1 sdi[0](W) sdj[1](W)
        dd if = /dev/md1 of=/dev/null bs=1M count=4096 &iostate –x /dev/sdi /dev/sdj 1 10
        發現僅僅有/dev/sdi盤有流量變化。

      --write-behind

      • 功能:該參數只針對RAID1有效。對于標記為write-mostly的設備,延遲寫。若RAID1中有一個盤是本地磁盤,一個盤是網絡上導入的磁盤,則對導入的磁盤設置write-behind參數。在寫入數據時,本地磁盤數據寫完后,RAID則認為該次寫操作已完成。
      • 舉例:mdadm --create /dev/md1 -l1 -n2 /dev/sde --wrtie-mostly /dev/sdf --write-behind –bitmap=internal
      • 備注:該參數僅僅支持raid1。使用該參數,必須指定bitmap。該參數沒有經過測試。

      --assume-clean

      • 功能:創建陣列時,不初始化磁盤上的數據,將指定的磁盤直接組成一個RAID。
      • 舉例:mdadm --create -l5 -n3 /dev/sd[b-d] --assume-clean
      • 備注:當我們可以保證RAID上的數據是一致的,不需要初始化,則可以使用這個參數,一方面可以節省初始化時間,更重要的是,當RAID被損壞后,如果磁盤都在系統中,可以使用此參數,恢復RAID上的數據。

      --backup-file

      • 功能:通過--grow參數來擴充raid5的成員盤數量時,如果沒有空閑盤,可以通過該參數指定一個文件頂替。
      • 舉例:mdadm --grow /dev/md4 –n4 –backup-file=/tmp/file.backup
      • 備注:通過該參數,僅僅支持擴展一個磁盤。不能對降級狀態的RAID5進行擴容。擴容后,mdadm將執行數據遷移。

      --name(-N)

      • 功能:陣列名稱。
      • 舉例:mdadm --create /dev/md4 -l5 -n3 /dev/sd[e-g] --metadata=1.0 --name=aaa
      • 備注:創建陣列時,superblock采用1.0版本,該參數才生效。組裝陣列的時候,可以通過該參數來組裝。mdadm -Av --name=aaa /dev/md4 /dev/sd[b-h]。如果創建時,沒有指定--name參數,mdadm將自動為陣列選取一個名字。選取規則是,選取md設備名稱的最后部分作為該陣列的名字。例如:/dev/md3,則3將被選擇為陣列的名稱。

      --homehost

      • 功能:創建時,通過該參數可以將主機名記錄在成員盤的superblock信息中,在組裝時用來匹配磁盤中記錄的主機名與當前主機是否一致,如果不一致,組裝不成功。
      • 舉例:mdadm --create /dev/md1 -l5 -n3 /dev/sd[b-d] --homehost=pc3x
      • 備注:它將覆蓋mdadm.conf文件里面HOMEHOST字段。homehost信息將被保存在superblock中,對于1.0以上版本superblock,它將作為name的前綴。對于0.90版本superblock,它將存儲與UUID后64位中。

      --run(-R)

      • 功能:當陣列的活躍盤上面存在其他陣列的superblock信息時,強制啟動陣列。
      • 舉例:mdada --create /dev/md0 -l5 -n3 /dev/sd[b-d] --run
      • 備注:構建陣列的盤存在其他陣列的superblock信息時,如果不加--run參數,mdadm將會彈出確認信息Continue creating array?。指定--run參數,將跳過確認信息,直接啟動陣列。

      --force(-f)

      • 功能:強制mdadm接受geometry和layout說明。
      • 舉例:mdadm --create /dev/md0 -l1 -n1 /dev/sde --force
      • 備注:正常情況下,mdadm不允許使用一塊盤建立陣列,包括linear, multipath, raid0和raid1。加—force,將可以建立一塊盤的陣列。
        通常情況下,建立raid5時,mdadm會用n-1個成員盤建立一個降級狀態的陣列,然后,將最后一塊成員盤被當成熱備盤的形式加入到陣列中。這樣,mdadm將執行recover操作。加--force,mdadm將直接建立一個active狀態的陣列,然后執行resync操作。

      -a, --auto{=no,yes,md,mdp,part,p}{NN}

      • 功能:通知mdadm是否創建設備文件,并分配一個未使用的次設備號。
      • 舉例:mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] --auto=md
      • 備注:
        auto默認值是--auto=yes,需要md設備的設備文件名有一個標準格式,根據這個設備文件名的格式來指定RAID是否可分區以及該RAID的次設備號。
        當--auto=yes時標準格式為:不可分區陣列,/dev/mdNN、/dev/md/NN,如指定設備文件名為/dev/md0,則該RAID是一個不可分區的,且次設備號為0。可分區陣列/dev/md/dNN和/dev/md_dNN。
        --auto=no,將不會創建設備文件,如果不存在指定的設備文件,將不能創建陣列。
        --auto=md,創建一個不可以分區的陣列。
        --auto=mdp/part/p,創建一個可以分區的陣列。
        如果指定了--scan參數,那配置文件(/etc/mdadm.conf)里面指定的auto=將覆蓋命令行后面給定的--auto=。

      --symlink=no

      • 功能:禁止創建軟連接。
      • 舉例:mdadm --create /dev/md/0 -l5 -n3 /dev/sd[b-d] --symlink=no
      • 備注:正常情況下,mdadm在/dev/md/下面創建設備時,它會在/dev/目錄下面為該設備創建一個軟連接,名字以md或者md_開始。指定該參數,將禁止該功能。即使/etc/mdadm.conf文件里面禁止創建軟連接,通過--symlink=yes也可以強制創建。

      --metadata(-e)

      • 功能:指明被使用superblock類型。
      • 舉例:mdadm --create /dev/md/0 -l5 n3 /dev/sd[b-d] -e1.0
      • 備注:當創建陣列時,默認是0.90。默認值可以改變,mdadm.conf文件中,寫如下信息:CREATE metadata=1。可選擇值為:
        0.90,default:使用默認的0.90版本superblock。這個版本限制陣列只能有28個成員盤和RAID1的成員盤不能大于2TB(沒有測試過)。
        1.0,1.1,1.2:使用新版本superblock。它有新的約束。不同子版本,存儲superblock于磁盤不同位置。1.0,末尾;1.1,開始;1.2,開始4K。

      Build陣列(--build)

      該模式同create參數相同,但該模式創建的是無superblock的raid0 、linear、 multipath、 or faulty的RAID。詳細參數說明,見create模式。

      組裝陣列--assemble或-A)

      該模式用來組裝陣列。當陣列被停止后,或重啟設備時,如要繼續使用該陣列,此要將該陣列組裝起來。下面詳細介紹該模式的參數。

      --uuid(-u)

      • 功能:通過匹配uuid來重構raid。
      • 舉例:mdadm -Av --uuid=af25a90b:0d43e494:46533453:86b2b0d4 /dev/md1
      • 備注:uuid號指raid的uuid號,如果磁盤中記錄的uuid號與指定的uuid號不匹配,則不使用該磁盤。

      --super-minor(-m)

      • 功能:通過匹配設備次設備號來重構raid。
      • 舉例:mdadm -A /dev/md0 --super-minor=0
      • 備注:
        對于superblock版本為1.0的陣列,不能通過該參數進行重組。
        次設備號在創建陣列時,已經分配。重組陣列時,對于不包含該次設備號的設備將不能重組到陣列中。例如:重組的md設備為/dev/md0,那么mdadm將尋找次設備號為0的所有設備。
        如果創建陣列時,陣列為/dev/md1,那么所有設備的次設備號為1,即使重組后,陣列變為/dev/md3,所有設備的次設備號還為1。

      --name(-N)

      • 功能:通過name組裝陣列。
      • 舉例:mdadm -A --name=god /dev/md0
      • 備注:
        僅支持superblock版本為1.0的陣列。
        創建陣列時,要指定--name(或homehost)。組裝時,--name要匹配每個設備上的name(或homehost)。下面舉例說明:
        mdadm --create /dev/md1 -l5 -n3 /dev/sd[b-d] --e1.0 --homehost=pc3x --assume-clean
        mdadm -D /dev/md1,獲取Name字段值,應該為pc3x:N,N為數字。
        mdadm --stop /dev/md1
        mdadm -A --name=Name字段值 /dev/mdX

      --force(-f)

      • 功能:當superblock過期時,可以通過該參數強制組裝。
      • 舉例:mdadm -A --super-minor=0 /dev/md0 --force
      • 備注:如當RAID在重構過程中,設備重啟了,再組裝RAID時,需要加--force參數,才能組裝成功。

      --run(-R)

      • 功能:當重組陣列active盤數少于創建時指定個數時,嘗試啟動陣列。
      • 舉例:mdadm -A /dev/md0 /dev/sdb /dev/sdc --run
      • 備注:正常情況下,組裝陣列時,如果指定的active盤數小于期望的盤數,mdadm將組裝成功,但狀態是inactive,無法使用該RAID。如果指定了--run參數,mdadm將通過各種方式使其啟動。下面舉例說明。
        mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d]
        mdadm --stop /dev/md0
        mdadm -A /dev/md0 /dev/sdb /dev/sdc;執行結果如下:
        mdadm: /dev/md0 assembled from 2 drives - need all 3 to start it (use --run to insist).
        cat /proc/mdstate; 查詢到md0信息如下:
        md0 : inactive sde[0] sdf[1]
        mdadm --run /dev/md0;可以啟動md0陣列。
        mdadm --stop /dev/md0
        mdadm -A --run /dev/md0 /dev/sdb /dev/sdc;組裝陣列并啟動成功。

      --no-degraded

      • 功能:組裝降級陣列,不啟動陣列。
      • 舉例:mdadm -A --no-degraded --scan /dev/md1
      • 備注:正常情況下,mdadm -A --scan組裝陣列時,即使掃描到盤個數小于陣列創建時指定盤個數,也可以組裝并啟動成功。當加上--no-degraded參數,則不啟動該陣列。

      -a, --auto{=no,yes,md,mdp,part}

      • 功能:更改md設備名稱。
      • 舉例:mdadm -A --auto=mdp /dev/test /dev/sdb /dev/sdc /dev/sdd
      • 備注:關于該參數具體說明,可以看create模式下相關部分。正常情況下,如果運行mdadm -A /dev/test /dev/sd[b-d]將失敗,因為/dev/test不是標準md設備名。而指定了--auto=mdp后,可以組裝成功,并為該設備產生一個次設備號。

      --bitmap(-b)

      • 功能:指定組裝RAID使用的bitmap文件,該文件為創建時指定的文件。
      • 舉例:mdadm -A --bitmap=/root/aaa.file /dev/md1 /dev/sd[b-d]
      • 備注:如果是internal類型的bitmap,重組時不需要指定。對于非internal類型的bitmap,如果不指定,組裝成功的陣列將不在有bitmap功能。

      --backup-file

      • 功能:如果一個RAID使用了backup-file參數進行了擴容,那么組裝時,也需要指定backup-file。
      • 舉例:mdadm -A /dev/md0 /dev/sd[b-d] --backup-file=/root/aaa
      • 備注: 下面舉例說明:
        mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d]
        mdadm --grow /dev/md0 -n4 --backup-file=/root/aaa
        mdadm --stop /dev/md0
        mdadm -A /dev/md0 /dev/sd[b-d] --backup-file=/root/aaa
        如果重組時,如果不指定backup file。測試結果如下:
        對于擴容完成的陣列,重組時指定backup file與否沒有關系,均可以重組和啟動成功。對于正在擴容中的陣列,停止陣列后,再重組,指定backup file與否也沒有關系,均可以重啟和啟動成功,reshape進度繼續,而非重新開始。
        the system crashed during the critical section,這種情況下重組陣列,需要指定backup file(個人理解)。因為通過—backup-file擴充盤數時,首先會進行“mdadm: Need to backup 384K of critical section..”這步操作,然后是“mdadm: ... critical section passed.”,擴充磁盤數完成,進行reshape。

      --update(-U)

      • 功能:組裝陣列,更新每個設備的superblock信息。
      • 舉例:mdadm -A /dev/md0 /dev/sd[b-d] --update=xxx
      • 備注:xxx值可能為sparc2.2, summaries, uuid, name, homehost, resync, byteorder, devicesize or super-minor。
        ? sparc2.2:
        在linux內核版本為2.2下,需要指定該參數來給內核打一個patch。
        ? super-minor:
        該選項會更新每個設備的superblock信息中preferred minor字段,使該字段的值等于所屬陣列的次設備號。當使用--super-minor組裝陣列時,更換了md設備名稱。這時,該設備的次設備號就會改變。但過mdadm –E可以查詢后,發現各個成員盤中記錄的陣列的次設備號沒有更新。
        ? uuid:
        更新陣列的UUID。如果通過參數--uuid給定了一個合法的UUID,那么這個UUID將當作陣列的新UUID,而不是拿這個UUID來組裝陣列之用。如果--uuid未指定,將隨機選擇UUID。正常情況下,組裝陣列,其UUID是不變的。下面舉例說明:
        mdadm -A /dev/md2 --super-minor=2 --update=uuid --uuid=bc3c1314:8ac4d622:8bf1a0f2:72d806aa
        結果為,改變陣列的uuid為bc3c1314:8ac4d622:8bf1a0f2:72d806aa。
        ? name:
        更改存儲在陣列superblock中的Name字段。下面舉例說明:
        mdadm --create /dev/md1 -l5 -n3 /dev/sd[e-g] -e1.0 --name=pc3x --assume-clean
        mdadm --stop /dev/md1
        mdadm -A /dev/md1 /dev/sd[e-g] --update=name; 
        結果為,陣列的Name字段由pc3x更新為md陣列的新次設備號,這里也就是1。
        mdadm -A /dev/md1 /dev/sd[e-g] --update=name;
        結果為,陣列的Name字段將不在更新。
        mdadm -A /dev/md1 /dev/sd[e-g] --update=name --name=aaa;
        結果為,陣列的Name字段更新為aaa。
        ? homehost:
        更新superblock里面的homehost信息。對于0.9版本,更新UUID。對于1.0版本,更新name。
        mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] -homehost=pc3x --assume-clean
        mdadm -D /dev/md0;查詢UUID
        mdadm --stop /dev/md0
        mdadm -A /dev/md0 /dev/sd[b-d] --homehost=aaa --update=homehost
        mdadm -D /dev/md0;查詢UUID,與上面相比已改變。
        ? resync:
        標識陣列為dirty來表示所有冗余數據都可能是不正確。強迫mdadm開啟resync,來保證冗余數據的正確性。
        ? byteorder:
        該選項的存在,允許陣列在不同字節序的機器上面移動。僅針對0.9版本superblock。(沒有測試)
        ? summaries:
        糾正superblock中的摘要信息。包括total,working,active,failed,和spare devices。(沒有測試)
        ? devicesize:
        這個屬性很少使用,僅僅支持superblock版本為1.1和1.2。當陣列的成員盤改變大小的時候,這個功能會有用。成員盤的superblock中記錄了成員盤可以用于存儲數據的空間大小,當增加了成員盤空間,superblock并不會改變它相應的字段。這樣,當增加陣列空間時,就會報錯。使用--update=devicesize,可以修復這個錯誤。
        下面使用分區來測試說明。
        mdadm --creat /dev/md0 -l5 -n3 /dev/sd[b-d]1; 假設這里分區大小均為2G
        mdadm -E /dev/sdb1; 查看Avail Dev Size字段
        mdadm --stop /dev/md0
        改變每個分區大小,增加到4G;fdisk命令先刪除原分區在建立該分區。
        mdadm -E /dev/sdb1; 查看Avail Dev Size字段,沒有識別出新增空間。 
        mdadm -A /dev/md0 /dev/sd[b-d]1
        mdadm --stop /dev/md0
        mdadm -A /dev/md0 /dev/sd[b-d]1 --update=devicesize
        mdadm -E /dev/sdb1; 查看Avail Dev Size字段,識別出新增空間。

      --auto-update-homehost

      • 功能:該項僅在auto-assembly情況下起作用。該條件下,如果沒有發現合適的陣列適合該homehost,mdadm將重新掃描所有陣列并組裝它們,并更新它們的homehost為指定值。
      • 舉例:mdadm -A --scan --homehost=aaa --auto-update-homehost
      • 備注:下面舉例說明。
        mdadm --create /dev/md0 -l5 -n3 /dev/sd[b-d] --homehost=pc3x --assume-clean
        mdadm --stop /dev/md0
        mdadm -A --scan --homehost=aaa --auto-update-homehost

      擴容陣列(--grow)

      --raid-disks(-n)

      • 功能:改變成員盤數量。
      • 舉例:mdadm --grow /dev/md0 --raid-disks=5
      • 備注:陣列只有在正常狀態下,才能擴容,降級及重構時不允許擴容。對于raid5來說,只能增加成員盤,不能減少。而對于raid1來說,可以增加成員盤,也可以減少。但要減少成員盤時,首先要將盤faulty和removed掉。

      --size(-z)

      • 功能:改變成員盤大小。
      • 舉例:mdadm --grow /dev/md0 --size=4194304
      • 備注:可以增加或者減小成員空間大小。當增加空間時,將執行resync操作。madam --grow /dev/md0 --size=max,分配可使用最大的空間給陣列。

      --bitmap(-b)

      • 功能:增加或者移除bitmap。
      • 舉例:
        ? mdadm --grow /dev/md0 -b internal;增加bitmap
        ? mdadm --grow /dev/md0 -b none;移除bitmap

      --level(-l)

      • 功能:尚不支持改變RAID級別。

      --layout(-p)

      • 功能:改變校驗數據分布。等同于create模式下--layout選項。

      管理磁盤(--manage)

      --add(-a)

      • 功能:將指定設備添加到陣列中。
      • 舉例:mdadm --add /dev/md0 /dev/sdb
      • 備注:如果RAID是正常狀態,則--add一個磁盤后,該磁盤變為RAID的熱備盤。如果RAID為降級狀態,當--add所掉的成員盤時,若磁盤上記錄了bitmap信息,則根據bitmap 信息來重構RAID磁盤中需要同步的部分。如果RAID為降級狀態,--add一個非掉的成員盤,RAID開始全局重構。

      --re-add

      • 功能:增加一個剛剛從陣列中移除不久的設備。
      • 舉例:mdadm -r /dev/md0 /dev/sdb --re-add /dev/sdb
      • 備注:--red-add與--add目前測試看來效果相同。

      --fail(-f)

      • 功能:標記指定盤為faulty。
      • 舉例:mdadm -f /dev/md0 /dev/sdb
      • 備注:除了可以指定設備名外,也可以指定detached。使用detached,可以導致從系統detached的盤被標記為faulty(這個沒有測試)。

      --set-faulty

      • 功能:作用等同于--fail

      --remove(-r)

      • 功能:從陣列中移除指定設備。
      • 舉例:
        ? mdadm -r /dev/md0 /dev/sdb /dev/sdc,移除md0中的sdb和sdc。
        ? mdadm -r /dev/md1 faulty;移除一個faulty的設備,并不能同時將所有faulty設備移除。
        ? mdadm -r /dev/md1 detached;沒有測試。
      • 備注:只可以移除spare和faulty盤。

      misc模式

      --query(-Q)

      • 功能:檢查設備是否為md設備,是否為md陣列的組成部分。
      • 舉例:mdadm --query /dev/md0 or mdadm --query /dev/sdi
      • 備注:
        ? 查詢一個md設備,輸出信息如下:
        [root@localhost ~]# mdadm --query /dev/md0
        /dev/md0: 15.100GiB raid5 3 devices, 0 spares. Use mdadm --detail for more detail.
        包括陣列名稱、陣列大小、陣列級別、陣列的盤數和熱備盤數。
        ? 查詢一個非md設備(設備是md陣列的active盤),輸出信息如下:
        [root@localhost ~]# mdadm --query /dev/sdj
        /dev/sdj: is not an md array
        /dev/sdj: device 1 in 2 device active raid1 /dev/md3.  Use mdadm --examine for more detail.
        ? 查詢一個非md設備(設備是md陣列的faulty盤),輸出信息如下:
        /dev/sdi: is not an md array
        /dev/sdi: device 0 in 2 device undetected raid1 /dev/md2.  Use mdadm --examine for more detail.
        ? 查詢一個非md設備(設備存在superblock信息,但已經從md陣列移除),輸出信息:
        /dev/sdg: is not an md array
        /dev/sdg: device 2 in 3 device mismatch raid5 /dev/md0.  Use mdadm --examine for more detail.
        ? 查詢一個非md設備(設備不存在superblock信息),輸出信息:
        [root@localhost ~]# mdadm --query /dev/sdk
        /dev/sdk: is not an md array

      --detail(-D)

      • 功能:顯示一個陣列的詳細信息。
      • 舉例:mdadm --detail /dev/md0
      • 備注:
        ? mdadm -D /dev/md0 顯示信息如下:
        /dev/md0:
        Version : 00.90.03      //superblock版本
        Creation Time : Thu Jul 28 08:31:13 2011 //創建陣列時間
        Raid Level : raid5      //陣列級別
        Array Size : 16777088 (16.00 GiB 17.18 GB) //陣列大小
        Used Dev Size : 8388544 (8.00 GiB 8.59 GB) //每塊成員盤使用在陣列中的大小
        Raid Devices : 3      //成員盤個數,正在重構中重構盤也計算在內
        Total Devices : 3      //磁盤總個數=active+failed+spare
        Preferred Minor : 0      //陣列次設備號
        Persistence : Superblock is persistent  //是否使用superblock
        Intent Bitmap : Internal     //bitmap類型
        Update Time : Sat Jul 30 08:45:47 2011  //更新時間
        State : active       //陣列狀態
        Active Devices : 3      //活躍盤個數,正在重構中的重構盤不計算在內,而計算在Spare Device中,重構完成后,才從Spaer Devices中計算到此項中。
        Working Devices : 3      //同Raid Devices相同。
        Failed Devices : 0      //faulty盤個數。
        Spare Devices : 0      //熱備盤個數,重構過程中頂入的重構盤仍計算在內。
        Layout : left-symmetric     //冗余分布算法
        Chunk Size : 64K      //條塊大小
        UUID : f4eea5d5:1959d933:c4cd1425:c6c88f28 //RAID uuid
        Events : 0.66
        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
        ? mdadm -Ds顯示/proc/mdstat中所有陣列的信息
        ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f4eea5d5:1959d933:c4cd1425:c6c88f28
        ARRAY /dev/md1 level=raid5 num-devices=3 UUID=cdaf2fef:dfe7b741:2fb91a6c:772f21a6
        ARRAY /dev/md3 level=raid1 num-devices=2 UUID=5c8695d2:e606d5ee:8fa15373:20bdb34a
        ? mdadm -D --brief /dev/md0將列出md陣列的簡略信息。
        ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f4eea5d5:1959d933:c4cd1425:c6c88f28

      --export(-Y)

      • 功能:與--detail一起使用,使陣列信息的輸出格式變為key=value的格式。
      • 舉例:mdadm --detail --export /dev/md0
      • 備注:輸出的內容為:
        MD_LEVEL=raid0
        MD_DEVICES=4
        MD_METADATA=0.90
        MD_UUID=6905fc31:e0e4cdcc:0ae08b48:7f860f33

      --examine(-E)

      • 功能:打印設備上面的superblock信息
      • 舉例:mdadm --examine /dev/sdj
      • 備注:
        ? mdadm --examine /dev/sdb顯示信息為:
        /dev/sdb:
        Magic : a92b4efc
        Version : 00.90.00
        UUID : f4eea5d5:1959d933:c4cd1425:c6c88f28
        Creation Time : Thu Jul 28 08:31:13 2011
        Raid Level : raid5
        Used Dev Size : 8388544 (8.00 GiB 8.59 GB)
        Array Size : 16777088 (16.00 GiB 17.18 GB)
        Raid Devices : 3
        Total Devices : 3
        Preferred Minor : 0
        Update Time : Sat Jul 30 08:45:47 2011
        State : clean
        Internal Bitmap : present
        Active Devices : 3
        Working Devices : 3
        Failed Devices : 0
        Spare Devices : 0
        Checksum : dfee75c0 - correct
        Events : 0.66
        Layout : left-symmetric
        Chunk Size : 64K
        Number   Major   Minor   RaidDevice  State
        this     0       8       16        0       active sync   /dev/sdb
        0     0       8       16        0       active sync   /dev/sdb
        1     1       8       32        1       active sync   /dev/sdc
        2     2       8       48        2       active sync   /dev/sdd
        ? mdadm --examine --scan。如果/etc/mdadm.conf文件聲明了DEVICE字段,將掃描該字段列出的設備。如果沒有聲明,將掃描所有設備。
        ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f4eea5d5:1959d933:c4cd1425:c6c88f28
        ARRAY /dev/md1 level=raid5 num-devices=3 UUID=cdaf2fef:dfe7b741:2fb91a6c:772f21a6
        ARRAY /dev/md3 level=raid1 num-devices=2 UUID=5c8695d2:e606d5ee:8fa15373:20bdb34a
        ? mdadm --examine --brief /dev/sdj列出具體設備所屬于陣列的信息。
        ARRAY /dev/md3 level=raid1 num-devices=2 UUID=5c8695d2:e606d5ee:8fa15373:20bdb34a

      --sparc2.2

      • 功能:對于linux內核版本為2.2下創建的RAID,通過該參數修正陣列的superblock信息
      • 舉例:mdadm -E --sparc2.2 /dev/md0
      • 備注:如果陣列是通過2.2內核加上RAID patch的形式建立的,那樣superblock建立的不正確,至少與2.4及以后的內核不兼容。可以通過--examine --spare2.2,在顯示信息之前修正它。也可以通過--assemble --update=sparc2.2,重裝它。

      --examine-bitmap(-X)

      • 功能:顯示bitmap信息。
      • 舉例:mdadm -X /dev/sdx or mdadm -X /root/bitmap.file
      • 備注:備注:mdadm -X /dev/sdh顯示內容
        Filename : /dev/sdh
        Magic : 6d746962
        Version : 4
        UUID : 85086dde:4b2d35db:8e186060:0589add1
        Events : 0
        Events Cleared : 0
        State : OK
        Chunksize : 32 KB
        Daemon : 5s flush period
        Write Mode : Normal
        Sync Size : 8388544 (8.00 GiB 8.59 GB)
        Bitmap : 262142 bits (chunks), 262142 dirty (100.0%)

      --run(-R)

      • 功能:陣列中某一部分設備包含其他陣列superblock信息時,該陣列可能是inactive狀態,或需要用戶確認后才能啟動,使用該參數可以直接將陣列設為active狀態。
      • 舉例:
        ? mdadm --CR /dev/md0 -l5 -n3 /dev/[b-d] -x1 /dev/sde --bitmap=internal --force
        ? mdadm -R /dev/md0

      --stop(-S)

      • 功能:停止陣列。被停止的陣列需要重新組裝后才能使用。
      • 舉例:mdadm --stop /dev/md0

      --readonly(-o)

      • 功能:將active陣列變成只讀。
      • 舉例:mdadm --readonly /dev/md0
      • 備注:通過cat /proc/mdstate文件可以查看到陣列的這個變化。如果正在進行重構過程中,陣列變成了只讀,那陣列將不能夠繼續進行重構。不可以重復的對同一設備進行只讀設置。

      --readwrite(-w)

      • 功能:將只讀陳列變成可讀寫。
      • 舉例:mdadm --readwrite /dev/md0
      • 備注:陣列默認是可讀寫。不可以重復的對同一設備進行可讀寫設置。

      --zero-superblock

      • 功能:將包含合法md信息的superblock區域置為零。
      • 舉例:mdadm --zero-superblock /dev/sdj
      • 備注:停止陣列后,若需要清理磁盤上的陣列信息,需要執行該操作。

      --test(-t)

      • 功能:與--detail一起使用,獲取陣列的狀態。
      • 舉例:mdadm --detail --test /dev/md0; echo $?
      • 備注:--detail參數單獨使用時,只有在獲取一些設備的有用信息失敗情況時,才返回非0。而與--test一起使用,echo $?的結果如下:
        ? 0:陣列處于active狀態。
        ? 1:陣列存于degrade和重構狀態。
        ? 2:陣列處于disabled狀態。
        ? 4:獲取設備信息時,存在錯誤。

      -W, --wait

      • 功能:它將等待resync, recovery, or reshape完成,然后返回。
      • 舉例:mdadm -W /dev/md0
      • 備注:如果md設備沒有進行resync, recovery, or reshape,該命令將直接返回。echo $?結果為1。如果mdadm等待md設備完成resync, recovery, or reshape后,命令執行結束,echo $?為0。

      監控模式(--monitor)

      指定監控對象:

      對于命令mdadm --monitor options... devices...,如果給出了devices,則僅僅監控指定的devices。反之,監控所有配置文件(/etc/mdadm.conf)中的devices。如果指定了--scan,則/proc/mdstate里面列出的設備也被監控。

      輸出監控事件:

      監控的結果就是產生事件。事件被傳遞給指定的程序或者發送給指定的E-mail,則事件報告給stdout。具體如何指定事件的輸出見下節詳述。當傳遞事件給程序時,程序立刻運行。傳遞給程序2-3個參數。第一個是事件的名稱,第二個是產生事件的md設備名稱,如果存在,第三個參數是關聯設備的名稱。

      被監控事件類型:

      DeviceDisappeared:對mdadm配置monitor錯誤時,會產生該事件。例如:對于一個已經配置了監控進程的md設備,再次給它配置監控進程,后配置的監控進程將產生該事件。對于--mail參數配置錯誤的參數,如配置兩個以上郵箱,之間以空格隔開。可以配置成功,但會報該事件。

      RebuildStarted:md設備開始重建。

      RebuildNN:md設備的重建進度到達某些值時產生監控事件。如進度值為20、40、60和80時,產生相應監控事件。

      RebuildFinished:md設備重建完成。

      Fail:md設備上面一個磁盤狀態為faulty。

      FailSpare:熱備盤代替faulty盤失敗。

      SpareActive:熱備盤代替faulty盤成功,并且Spare盤狀態最終變為active(非spare)狀態時,產生監控事件。

      NewArray:/etc/mdadm.conf也/proc/mdstat兩個文件對比,mdadm.conf文件中不存在的md設備,即被報告該事件。

      DegradedArray:檢查到存在降級的md設備。

      MoveSpare:在使用全局熱備時,熱備盤從一個md設備移動到另一個md設備。

      SparesMissing:/etc/mdadm.conf文件,某個md設備指定了spares參數(熱備盤個數),而monitor發現md設備的熱備盤個數少于指定個數時,產生該事件。

      TestMessage:與--test參數配合,當運行monitor命令時,相應的md設備產生該事件。

      所有事件都可以觸發程序運行,但僅有Fail、FailSpare、DegradedArray、SparesMissing 和TestMessage事件可以通過mail發送。

      可監控級別:

      監控md設備狀態的變化。該參數對raid1、4、5、6、10和multipath盤陣有作用。對于raid0和linear,由于它們無相關監控事件不需要監控。

      監控設置全局熱備:

      除了能夠報告事件外,對于處于相同spare-group的陣列,如果其中一個陣列的某個磁盤損害且不存在熱備盤,而另外陣列存在熱備盤,monitor進程可以把熱備盤移動到這個陣列上面來。及多個陣列可以共有一個熱備盤。配置文件格式如下:
      DEVICE /dev/sd*
      ARRAY /dev/md0 level=raid5 num-devices=3 spares=1 UUID=a7e27ec9:3389e70a:2a2d9651:abbe4ad6 spare-group=group1
      ARRAY /dev/md1 level=raid1 num-devices=2 UUID=8f427b1d:d86e2313:7f5d9f04:310f9e63 spare-group=group1
      對于上面md0和md1,配置了spare-group都是group1,當監控開啟后,md1若掉盤了,監控發現該事件后,會自動將md0中的熱備頂到md1中,供其使用。

      --mail(-m)

      • 功能:指定郵件地址
      • 舉例:madam –monitor –mail=xxx@csdn.net /dev/md0
      • 備注:首先要保證sendmail服務啟動,同時,通過mail命令可以發送郵件成功。可以配置多個郵箱,以逗號隔開。

      -program(-p), --alert

      • 功能:當事件被發現時,觸發指定的程序運行。
      • 舉例:mdadm --monitor --program=/root/pc3x.sh /dev/md0 &
      • 備注:程序可以為shell腳本,通過$1,$2,$3來獲取相應的參數。

      -y, --syslog

      • 功能:事件通過syslog報告。
      • 舉例:mdadm --monitor --syslog /dev/md0 &
      • 備注:message被打印到/var/log/message文件里面

      --delay(-d)

      • 功能:查看設備的延遲時間。默認是60s
      • 舉例:mdadm --monitor –mail=xxx@csdn.net --program=/root/pc3x.sh --delay=300 /dev/md0 &

      --daemonise(-f)

      • 功能:mdadm將以后臺demon形式來運行。
      • 舉例:mdadm --monitor --syslog /dev/md0 -f
      • 備注:demon的ID號將被打印到屏幕上面。可以配合--pid-file參數使用,將ID號打印到--pid-file參數指定的文件中。

      --pid-file(-i)

      • 功能:當mdadm以demon模式運行時,把進程ID寫入到指定的文件中。
      • 舉例:mdadm --monitor --syslog --pig-file=/root/pc3x.pid /dev/md0 -f
      • 備注:注意,該參數必須和-f參數一起使用。如果不使用—pid-file參數,進程號將被打印到屏幕上,指定該參數后,進程號被寫入到指定的文件中。

      --oneshot(-1)

      • 功能:立刻檢查一次盤陣,會檢查到NewArray、DegradedArray 、SparesMissing事件。
      • 舉例:mdadm --monitor --oneshot --scan --program=/root/pc3x.sh
      • 備注:該參數不能與-f參數一起使用。雖然與-f參數一起使用不會報錯,但是demon根本不會啟動起來。與—scan參數配合使用,效果更加。在配置cron一起使用,效果更上一層。

      --test(-t)

      • 功能:當啟動mdadm的時候,給每個md設備發送一條TestMessage事件。
      • 舉例:mdadm --monitor --test --syslog /dev/md0 -f
      • 備注:當--test配合--scan使用時,它會給/etc/mdadm.conf文件里面的每個md設備發送TestMessage事件。如果mdadm --monitor命令指定設備,它會給每個設備發送TestMessage事件。

      --config(-c)

      • 功能:指定特定的配置文件,通過配置文件指定郵件地址和程序。不使用該參數,默認文件為/etc/mdadm.conf。
      • 舉例:mdadm --monitor --scan --config=文件 --oneshot
      • 備注:如果指定其他配置文件,則/etc/mdadm.conf文件將失效。

      --scan(-s)

      • 功能:監控/proc/mdsate文件中列出的所有設備。
      • 舉例:mdadm --monitor --scan --program=/root/pc3x.sh -f
      • 備注:當使用--scan參數時,--program或者—mail,兩個參數必須指定一個。同時,mdadm --monitor命令行不需要特別說明某個設備。

      非特定模式參數

      --help(-h)

      • 功能:顯示幫助信息,后面跟上選項名稱,將顯示該選項方式下所有選項幫助信息。
      • 舉例:mdadm --help; mdadm --help --add; mdadm --create --help

      --help-options

      • 功能:顯示一些幫助信息。跟--help大同小異。
      • 舉例:mdadm --help-options

      --version(-V)

      • 功能:打印mdadm版本
      • 舉例:mdadm --version

      --verbose(-v)

      • 功能:對于正在發生的,顯示詳細信息。
      • 舉例:mdadm -D -v -s
      • 備注:該參數可以使用2遍,顯示額外信息。目前可以應用在--detail --scan 和 --examine --scan。

      --quiet(-q)

      • 功能:避免打印完全的信息。
      • 備注:這種模式下,mdadm除非是非常重要的信息,否則不會打印任何信息。

      --brief(-b)

      • 功能:顯示簡短信息。比--verbose少。
      • 舉例:mdadm -D /dev/md0 --brief
      • 備注:可以與--detail或--examine一起使用。當與--verbose一起使用時,打印--verbose與--brief中間狀態信息。

      --force(-f)

      • 功能:不同模式下面有不同意思,具體詳見各個模式。仔細小心使用這個參數。

      --config(-c)

      • 功能:指定配置文件。
      • 備注:默認配置文件為/etc/mdadm.conf,如果這個文件不存在,將是/etc/mdadm/mdadm.conf。如果值是none,mdadm會將配置文件看成空文件。如果值是partitions,mdadm將讀取/proc/partitions以獲取所有設備。
        mdadm --examine --brief --scan --config=partitions

      --scan(-s)

      • 功能:掃描配置文件或者/proc/mdstate文件,去獲取信息。
      • 備注:從/proc/mdstate文件中獲取一些/etc/mdadm.conf文件中沒有的信息。如:成員盤。唯一例外就是misc和monitor模式下,使用—detail或者—stop,mdadm將從/proc/mdstate文件中獲取所有陣列。如mdadm --stop --scan將停止所有的md設備。

      mdadm.conf

      配置文件作用:

      /etc/mdadm.conf作為默認的配置文件,主要作用是方便跟蹤軟RAID的配置,尤其是可以配置監視和事件上報選項。在這里我們主要說明配置文件在組裝RAID時的作用。更多mdadm.conf使用可參見man mdadm.conf。

      舉例:

      • 配置磁盤設備文件名:echo DEVICE /dev/sd[b-i] > /etc/mdadm.conf
      • 配置軟RAID信息:mdadm --detail --scan >> /etc/mdadm.conf
      • 利用配置文件組裝軟RAID:mdadm -A --scan
      • 當RAID無法組裝時(如缺少成員盤,或讀寫造成superblock數據過期),強制組裝軟RAID:mdadm -A --scan --force

      組裝中的幾點說明:

      • --scan參數只能根據掃描配置文件中配置的RAID,沒有配置在配置文件中的RAID不能組裝起來。
      • DEVICE中配置的是組裝RAID時,所有要掃描的磁盤,如RAID中的成員盤沒有配置到DEVICE項中,則該磁盤無法組裝到RAID中。

      需要加--force才能使RAID active的情況:

      • 對于有冗余且無熱備的RAID,停止后,又掉了一塊盤,組裝時不加--force,RAID組裝起來為inactive狀態,mdadm -D 查不到RAID信息,僅/proc/mdstat中可看到簡要信息。對于先掉盤,后停止的RAID,不需要--force也可以組裝成功。
      • 對于有冗余且無熱備,RAID中所有成員盤雖然在系統中,但配置文件的DEVICE的配置缺少一個成員盤,則組裝時,可以理解為缺少一塊成員盤。因此組裝結果同1中相同。
      • 重構狀態的RAID,重啟后,不指定--force無法組裝成功。

      無法將RAID組裝成active的情況:

      對于上節說到的缺少一塊成員盤時,可以通過--force參數將RAID組裝起來,但對于掉了兩塊或兩塊以上的成員盤時,無法將RAID再組裝成active狀態,只能組裝成一個inactive狀態的RAID。

      posted @ 2017-02-10 11:39  lpfuture  閱讀(21210)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 一区二区传媒有限公司| 亚洲色婷婷久久精品av蜜桃久久| аⅴ天堂中文在线网| 国产乱啊有帅gv小太正| 极品人妻少妇一区二区三区| 成人永久免费A∨一级在线播放 | 久久精品亚洲中文字幕无码网站| 亚洲一二三区精品与老人| 青青青爽在线视频观看| 少妇xxxxx性开放| 久久精品国产免费观看频道| 起碰免费公开97在线视频| 一区二区三区四区自拍视频| 欧美成人片在线观看| 日韩一区二区黄色一级片| 国产精品午夜福利合集| 国产精品国产三级国快看| 色伦专区97中文字幕| 宅男噜噜噜66网站高清| 亚洲精品成人区在线观看| 毛片av在线尤物一区二区| 18av千部影片| 日韩精品毛片无码一区到三区| 亚洲中文字幕综合小综合| 国产美女被遭强高潮免费一视频| 国产成人高清在线观看视频| 国产精品视频午夜福利| 亚洲AV无码东方伊甸园| 亚洲国产成人久久一区久久| 国产无遮挡又黄又大又爽| 久久精品国产99精品亚洲| 九九热爱视频精品| 国产色无码专区在线观看| 三级黄色片一区二区三区| 国产成人精品永久免费视频| 亚洲v欧美v日韩v国产v| 国产情侣激情在线对白| 内射中出无码护士在线| 天堂av资源在线免费| 少妇无码av无码一区| 亚洲av成人免费在线|