MDADM(8) MDADM(8) (NAME) mdadm - MD ( / Software RAID) (SYNOPSIS) mdadm [] <_> [] <_> (DESCRIPTION) mdadm (Software RAID) . RAID . ( ) ( ) . RAID (Redundancy) . Software RAID md ( - Multiple Devices) . md : LINEAR, RAID0 ( / Striping) RAID1 ( / Mirroring) RAID4, RAID5, RAID6, RAID10, MULTIPATH, FAULTY CONTAINER. MULTIPATH RAID : . md/multipath multipath Device Mapper . . FAULTY RAID . (Fault Injection) . . CONTAINER . CONTAINER RAID . RAID ( ) . RAID1 RAID5 RAID0 . CONTAINER, . mdadm CONTAINER ( RAID1 ) . (MODES) mdadm : (Assemble) . . mdadm (Superblock) . (Build) () . mdadm . . Build . (Create) (). . << >> (resync) ( ) . . (Follow or Monitor) md . RAID1 4 5 6 10 multipath . RAID0 Linear (Spare) . (Grow) ( ) (Reshape). Linear RAID 0/1/4/5/6 RAID 0 1 5 6 0 10 (Chunk size) RAID 0,4,5,6,10 (Write-intent bitmap) . (Incremental Assembly) . . (hot-plug) mdadm . --fail, . CONTAINER mdadm . (Manage)" (Spare) . (Misc)" << >> . (Auto-detect) . (OPTIONS) (Options for selecting a mode are:) -A, --assemble . -B, --build . -C, --create . -F, --follow, --monitor (Monitor). -G, --grow . -I, --incremental / / . --auto-detect . md . MS-DOS FD 0.90 . . mdadm ( initrd) . --add, --re-add, --add-spare, --fail, --remove, --replace (MANAGE) . (Misc) . (Options that are not mode-specific are:) -h, --help . --help-options . -V, --version mdadm. -v, --verbose . . --detail --scan --examine --scan . -q, --quiet . mdadm . -f, --force . . -c, --config= . conf.d . mdadm.conf(5) . partitions mdadm : DEVICE partitions containers /proc/partitions /proc/mdstat (Containers) . none mdadm . mdadm .conf . -s, --scan /proc/mdstat . mdadm ( ) MISC --detail --stop --scan /proc/mdstat . -e, --metadata= RAID () . --create 1.2 . metadata CREATE mdadm.conf . : 0, 0.90 0.90. . 64K . 1, 1.0, 1.1, 1.2 . (Endianness) (Checkpoint) . : ( 1.0) ( 1.1) ( 1.2). "1" "1.2" ( 1.x) "default" "1.2" . ddf DDF (Disk Data Format) SNIA. DDF . DDF CONTAINER . imsm Intel(R) Matrix Storage Manager. CONTAINER DDF Option-ROM : https://www.intel.com/content/www/us/en/support/products/122484 --homehost= HOMEHOST . homehost . . 0.90 SHA1 UUID . homehost . (Auto-Assemble) ( '_' ) . . "any" (Wildcard) . --homehost=any "any" . homehost . --prefer= mdadm /dev . --prefer mdadm . --prefer=by-uuid by-uuid /dev . --detail --monitor . --home-cluster= md . md . mdadm . (For create, build, or grow:) -n, --raid-devices= . (Spare) _ ( "missing") --create . --force linear multipath RAID0 RAID1 RAID4 RAID5 RAID6 . --grow RAID1 RAID4 RAID5 RAID6 . -x, --spare-devices= (eXtra) . . RAID . -z, --size= ( ) 1/4/5/6/10 RAID 0 . (Chunk size) RAID . ,max, ( ) ( ) . . 'K' 'M' 'G' 'T' . IDEMA . md . . --create . (Volume) . RAID 0 . --grow 1/4/5/6/10 DDF . RAID 0 . --grow . max . ( --grow --size=) . . . 'fsck' . --grow --size= . -Z, --array-size= --grow : . . (Reshape) . --array-size . . . ( fsck). max . (Clustered) . -c, --chunk= (Chunk size) . . . RAID0 RAID4 RAID5 RAID6 RAID10 . RAID4 RAID5 RAID6 RAID10 . 'K' 'M' 'G' 'T' . --rounding= Linear. . --chunk Linear . 0K ( ). -l, --level= RAID. --create, : linear, raid0, 0, stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, raid10, 10, multipath, mp, faulty, container. . CONTAINER container . --build, linear, stripe, raid0, 0, raid1, multipath, mp faulty . --grow RAID . (LEVEL CHANGES) . -p, --layout= RAID5 RAID6 RAID10 faulty . RAID0 . (Parity) RAID5 : left-asymmetric, left-symmetric, right-asymmetric, right-symmetric, la, ra, ls, rs. left-symmetric . parity-first parity-last RAID5 RAID4 . RAID5 DDF ddf-zero-restart, ddf-N-restart ddf-N-continue . RAID6 . RAID5 RAID6 N-1 RAID5 'Q' ( RAID6) : left-symmetric-6, right-symmetric-6, left-asymmetric-6, right-asymmetric-6 parity-first-6. faulty, : write-transient, wt, read-transient, rt, write-persistent, wp, read-persistent, rp, write-all, read-fixable, rf, clear, flush, none. . . . --grow . "clear" "none" "flush" . RAID10 'n' 'o' 'f' . 'n2' . : 'n' (Near): . 'o' (Offset): . 'f' (Far): . md(4) . . . 3.14 RAID0 . 5.4 'original' 'alternate' . mdadm 'original' . 'dangerous' . RAID5 RAID6 (Q) . --layout=preserve . --layout=normalise . --parity= --layout ( p -p). -b, --bitmap= (Write-intent bitmap). : internal - . clustered - . --nodes . none - ( grow). --bitmap-chunk= . . (internal) 64Meg . -W, --write-mostly 'write-mostly' . RAID1 'md' . . --write-behind= (Write-behind) write-mostly. . ( ). --failfast 'failfast' . RAID1 RAID10 . failfast . --assume-clean mdadm . . RAID1 RAID10 . ( badblocks) . --grow --size=, . --write-zeroes . --assume-clean . create-- . --backup-file= --grow RAID5 RAID6 ( ) . . --data-offset= 1.x . data-offset . mdadm . --grow . --continue --freeze-reshape . . -G . -N, --name= . POSIX PORTABLE NAME . -R, --run ( ). -f, --force . -o, --readonly / . -a, --add Grow : Linear raid-disks RAID0 . --nodes ( ). --write-journal RAID-4/5/6 ( SSD ). -k, --consistency-policy= . : resync . bitmap . --bitmap . journal RAID 4/5/6 . --write-journal . ppl RAID5 (Partial Parity Log) (Write Hole) . PPL . (For assemble:) -u, --uuid= (UUID) . . -m, --super-minor= (Minor number) . /dev/md1 /dev/md2 . "dev" . v0.90 --uuid . -N, --name= . POSIX PORTABLE NAME . -f, --force . mdadm . . -R, --run . --no-degraded --run . --backup-file= --assemble . --invalid-backup . -U, --update= . : summaries, uuid, name, nodes, homehost, home-cluster, resync, byteorder, devicesize, no-bitmap, bbl, no-bbl, ppl, no-ppl, layout-original, layout-alternate, layout-unspecified, metadata, super-minor. super-minor minor . uuid UUID . name ( ). nodes ( ). homehost homehost . home-cluster . resync (dirty) . byteorder 0.90 ( big-endian little-endian) . summaries . devicesize 1.1 1.2 . metadata v0.90 v1.0 ( ). no-bitmap . bbl no-bbl (Bad block list) . ppl no-ppl Partial Parity Log RAID5 . layout-original, layout-alternate layout-unspecified RAID0 ( 5.4). --freeze-reshape initrd (pivot) . (For Manage mode:) -t, --test . missing detached faulty . -a, --add (hot-add) . (re-add) (hot-spare) . --re-add . . missing . faulty . --add-spare re-add. -r, --remove ( ). failed, detached set-A . -f, --fail (Faulty). --set-faulty --fail. --replace . . --with --replace . --write-mostly 'write-mostly' ( RAID1). --readwrite 'write-mostly' . --cluster-confirm add-- . --add-journal RAID-4/5/6 . . --failfast 'failfast' ( RAID1 RAID10). --nofailfast 'failfast'. (For Misc mode:) -Q, --query : () md () md . . -D, --detail md . --detail-platform RAID ( / ) . . -Y, --export --detail, --detail-platform, --examine --incremental, key=value . -E, --examine . --examine --detail examine detail . -X, --examine-bitmap . ( /dev/md0). --examine-badblocks ( 1.x IMSM). --dump=directory --restore=directory . -R, --run . --assemble --run (Degraded) . -S, --stop . -o, --readonly . -w, --readwrite /. --zero-superblock md . --force . : . --kill-subarray= (subarray) . --update-subarray= . -t, --test --detail, mdadm ( ). -W, --wait md . --wait-clean (Clean) ( ). --action= ("sync_action") md idle, frozen, check repair. check sysfs repair . --udev-rules= udev (POLICY) mdadm.conf. (For Incremental Assembly mode:) --rebuild-map, -r (/run/mdadm/map) mdadm . --run, -R . --scan, -s . --fail, -f hot-plug . --path= fail-- . . (For Monitor mode:) -m, --mail . MAILADDR mdadm.conf. -p, --program, --alert . PROGRAM mdadm.conf. -y, --syslog 'syslog' 'daemon'. -d, --delay ( ). -r, --increment ( RebuildNN). -f, --daemonise mdadm ( PID ). -i, --pid-file (PID) . -1, --oneshot ( - cron). -t, --test TestMessage . --no-sharing . (ASSEMBLE MODE) : mdadm --assemble md-device options-and-component-devices... : mdadm --assemble --scan md-devices-and-options... : mdadm --assemble --scan options... RAID . mdadm md . . ( --scan) md . md . ( ) md . . --scan mdadm scan-- . --uuid, --name --super-minor md-device . md . --config --scan . . scan-- --run . udev mdadm /dev udev /run/mdadm/map udev . (Auto-Assembly) --assemble --scan mdadm . . homehost . "read-auto" ( ). 0.90 minor /dev/md/ ( /dev/md/3) . AUTO mdadm.conf . (BUILD MODE) : mdadm --build md-device --chunk=X --level=Y --raid-devices=Z devices --create . . raid0 linear raid1 raid10 multipath faulty . . raid1 raid10 --assume-clean . (CREATE MODE) : mdadm --create md-device --chunk=X --level=Y --raid-devices=Z devices md . md-device ( ). udev . ( IMSM ). RAID . --run . (Degraded) "missing" . RAID4 RAID5 RAID6 missing . RAID1 missing . RAID5 mdadm . --force . 1.x 0xDA . --grow --bitmap=internal . (BBL) . (MANAGE MODE) : mdadm device options... devices... . : mdadm /dev/md0 -f /dev/hda1 -r /dev/hda1 -a /dev/hda1 /dev/hda1 /dev/md0 . mdadm "re-add" . (MISC MODE) : mdadm options ... devices ... : --query md md. . --detail md . mdadm . --brief --scan mdadm.conf . --test --test, : 0 . 1 . 2 . 4 . --detail-platform RAID ( / ). -e --metadata= : 0 . 1 . 2 . --update-subarray= (Container) . name ppl no-ppl bitmap no-bitmap . --examine md . mdadm md . --dump=directory RAID (Sparse) . --restore=directory --dump . --stop md . --run . --readonly . --readwrite / . --scan --examine, /proc/mdstat . --examine, . -b, --brief ( detail examine). (MONITOR MODE) : mdadm --monitor options... devices... : o : md /proc/mdstat, o MD . --scan /proc/mdstat . . mdadm . (spare-group) POLICY, . : md ( ). mdadm systemd mdmonitor.service . MAILADDR mdadm.conf . : DeviceDisappeared (: Critical). RebuildStarted (: Warning). RebuildNN NN (: Warning). RebuildFinished (: Warning). Fail (: Critical). FailSpare (: Critical). SpareActive (: Info). NewArray /proc/mdstat (: Info). DegradedArray (: Critical). MoveSpare (: Info). SparesMissing (: Warning). TestMessage --test (: Info). Fail, FailSpare, DegradedArray, SparesMissing TestMessage . (GROW MODE) (GROW) . : o "size" RAID1 RAID4 RAID5 RAID6. o "raid- devices" RAID0 RAID1 RAID4 RAID5 RAID6. o (Chunk size) (Layout) RAID0 RAID4 RAID5 RAID6 RAID10. o RAID1 RAID5 RAID5 RAID6 RAID0 RAID4 RAID5 RAID0 RAID10 ( near-2). o (Write-intent bitmap). o . GROW IMSM . (SIZE CHANGES) "" . GROW . " " . . . (RAID-DEVICES CHANGES) RAID1 . RAID1 fail remove . . RAID5 RAID6 . . RAID0 RAID4 RAID5 . mdadm RAID0 ( RAID4 RAID0). . mdadm mdadm --grow --array-size . RAID5 RAID6 (" ") mdadm . --backup-file . (LEVEL CHANGES) RAID . RAID5 RAID6 --backup-file . (CHUNK-SIZE AND LAYOUT CHANGES) --backup-file . . (BITMAP CHANGES) . (CONSISTENCY POLICY CHANGES) --consistency-policy ( PPL RAID5). (INCREMENTAL MODE) : mdadm --incremental [--run] [--quiet] component-device [optional-aliases-for-device] : mdadm --incremental --fail component-device : mdadm --incremental --rebuild-map : mdadm --incremental --run --scan ( udev) . mdadm --incremental . --fail . CONTAINER . mdadm mdadm.conf, homehost . /run/mdadm/map . ( --run ) . mdadm -IRs "read-auto" . (ENVIRONMENT) mdadm . MDADM_NO_MDMON mdmon mdadm . mdadm/mdmon . MDADM_NO_UDEV mdadm /dev udev . udev '1' mdadm . MDADM_NO_SYSTEMCTL mdadm systemd ( mdmon) systemd . MDADM_NO_SYSTEMCTL=1 . IMSM_NO_PLATFORM IMSM ROM . mdadm IMSM . IMSM_NO_PLATFORM=1 . MDADM_GROW_ALLOW_OLD mdadm . MDADM_CONF_AUTO AUTO ( dmraid). (EXAMPLES) mdadm --query /dev/name-of-device RAID . mdadm --assemble --scan ( ). mdadm --stop --scan ( ). mdadm --follow --scan --delay=120 . mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/hd[ac]1 RAID1 /dev/md0 /dev/hda1 /dev/hdc1. echo 'DEVICE /dev/hd*[0-9] /dev/sd*[0-9]' > mdadm.conf mdadm --detail --scan >> mdadm.conf . echo 'DEVICE /dev/hd[a-z] /dev/sd*[a-z]' > mdadm.conf mdadm --examine --scan --config=mdadm.conf >> mdadm.conf IDE SCSI . mdadm --examine --brief --scan --config=partitions mdadm -Ebsc partitions /proc/partitions RAID . mdadm -Ac partitions -m 0 /dev/md0 /dev/md0 RAID . mdadm --monitor --scan --daemonise > /run/mdadm/mon.pid mdadm /run/mdadm/mon.pid. mdadm -Iq /dev/somedevice . mdadm --incremental --rebuild-map --run --scan . mdadm /dev/md4 --fail detached --remove detached /dev/md4 . mdadm --grow /dev/md4 --level=6 --backup-file=/root/backup-md4 RAID5 /dev/md4 RAID6 . mdadm --create /dev/md/ddf --metadata=ddf --raid-disks 6 /dev/sd[a-f] DDF . mdadm --create /dev/md/home -n3 -l5 -z 30000000 /dev/md/ddf RAID5 DDF . mdadm -A /dev/md/ddf1 /dev/sd[a-f] DDF . mdadm -I /dev/md/ddf1 ddf . mdadm --help . (FILES) /proc/mdstat /proc, /proc/mdstat md . /etc/mdadm.conf ( /etc/mdadm/mdadm.conf) . mdadm.conf(5) . /etc/mdadm.conf.d ( /etc/mdadm/mdadm.conf.d) . /run/mdadm/map --incremental, . (POSIX PORTABLE NAME) "A-Za-z0-9.-_" . "-" . (DEVICE NAMES) mdadm : '' /proc/mdstat ( /dev/md0). /dev/md/ ( /dev/md/home). ( home) . POSIX PORTABLE NAME . : /dev/mdNN ( NN ) : /dev/md_XXX ( XXX 3.3 ). (UNDERSTANDING OUTPUT) (checkpoint) . . (NOTE) mdadm mdctl . (SEE ALSO) mdadm MD RAID : https://raid.wiki.kernel.org mdadm : https://www.kernel.org/pub/linux/utils/raid/mdadm : mdmon(8), mdadm.conf(5), md(4). mdadm MDADM(8)