Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
mdadm [2020/05/12 02:44]
simandl
mdadm [2022/05/27 15:08] (aktuální)
simandl
Řádek 2: Řádek 2:
  
 =mdadm příkazy= =mdadm příkazy=
-mdadm --create /dev/md0 --level=1 --raid-devices=2 /​dev/​sd[[ab]]1+  ​mdadm --create /dev/md0 --level=1 --raid-devices=2 /​dev/​sd[[ab]]1 
 +   
 +  mdadm --manage /dev/md0 --fail /dev/sdb3 
 +   
 +  mdadm --manage /dev/md0 --remove /dev/sdb3
  
-mdadm --manage /dev/md0 --fail /dev/sdb3 +  ​mdadm --manage /dev/md0 --add /dev/sdc3 
- +   
-mdadm --manage /dev/md0 --remove /dev/sdb3 +  echo '​DEVICE /​dev/​hd*[[0-9]] /​dev/​sd*[[0-9]]'​ > mdadm.conf 
- +   
-mdadm --manage /dev/md0 --add /dev/sdc3 +  mdadm --detail --scan >> mdadm.conf 
- +   
-echo '​DEVICE /​dev/​hd*[[0-9]] /​dev/​sd*[[0-9]]'​ > mdadm.conf +  mdadm --grow --bitmap=internal /dev/md0 
- +   
-mdadm --detail --scan >> mdadm.conf +  mdadm --grow --bitmap=none /dev/md0 
- +   
-mdadm --grow --bitmap=internal /dev/md0 +  mdadm --assemble /dev/md3 /dev/sdb3 /dev/sdc3 
- +   
-mdadm --grow --bitmap=none /dev/md0 +  umount /dev/md0 
- +   
-mdadm --assemble /dev/md3 /dev/sdb3 /dev/sdc3 +  mdadm --manage /dev/md0 --stop 
- +   
-umount /dev/md0 +  mdadm --zero-superblock /dev/sdg1 
- +   
-mdadm --manage /dev/md0 --stop +  mdadm --create /dev/md0 --chunk=128 --level=raid6 --raid-devices=6 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 
- +   
-mdadm --zero-superblock /dev/sdg1 +  mdadm --run --readonly /dev/md0 
- +   
-mdadm --create /dev/md0 --chunk=128 --level=raid6 --raid-devices=6 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 +  mdadm --examine /dev/sda1 
- +   
-mdadm --run --readonly /dev/md0 +  mdadm -S /dev/md0 
- +   
-mdadm --examine /dev/sda1 +  mdadm --assemble /dev/md0 --force --uuid=a4bd7fc2:​b4d40d24:​e3edfc41:​b9f1a521 
- +   
-mdadm -S /dev/md0 +  You can cancel an array resync in progress using the following sequence of commands (as root):
- +
-mdadm --assemble /dev/md0 --force --uuid=a4bd7fc2:​b4d40d24:​e3edfc41:​b9f1a521 +
- +
-You can cancel an array resync in progress using the following sequence of commands (as root):+
  
- echo frozen > /​sys/​block/​md0/​md/​sync_action +  ​echo frozen > /​sys/​block/​md0/​md/​sync_action 
- echo none > /​sys/​block/​md0/​md/​resync_start +  echo none > /​sys/​block/​md0/​md/​resync_start 
- echo idle > /​sys/​block/​md0/​md/​sync_action+  echo idle > /​sys/​block/​md0/​md/​sync_action
  
 =3T disk= =3T disk=
Řádek 75: Řádek 75:
 You just need to have mdraid scrub the mirror. It'll notice the bad sector, and rewrite it automatically. You just need to have mdraid scrub the mirror. It'll notice the bad sector, and rewrite it automatically.
  
- echo '​check'​ > /​sys/​block/​mdX/​md/​sync_action ​   # use '​repair'​ instead for older kernels+  ​echo '​check'​ > /​sys/​block/​mdX/​md/​sync_action ​   # use '​repair'​ instead for older kernels
  
- #​!/​bin/​bash +  ​#​!/​bin/​bash 
-  +   
- ​save="​$(tput sc)";​ +  save="​$(tput sc)";​ 
- ​clear="​$(tput rc)$(tput el)";​ +  clear="​$(tput rc)$(tput el)";​ 
- for sync in /​sys/​block/​md*/​md/​sync_action;​ do+  for sync in /​sys/​block/​md*/​md/​sync_action;​ do
     md="​$(echo "​$sync"​ | cut -d/ -f4)"     md="​$(echo "​$sync"​ | cut -d/ -f4)"
     cmpl="/​sys/​block/​$md/​md/​sync_completed"​     cmpl="/​sys/​block/​$md/​md/​sync_completed"​
Řádek 104: Řádek 104:
             exit 1             exit 1
             ;;             ;;
-    ​esac+     esac
    
-    ​echo -n "​Repair $md...$save"​ >&​2 +     echo -n "​Repair $md...$save"​ >&​2 
-    read current < "​$sync"​ +     ​read current < "​$sync"​ 
-    while [[|"​$current"​ != "​idle"​ ]]; do +     ​while [[|"​$current"​ != "​idle"​ ]]; do 
-        read stat < "​$cmpl"​ +         ​read stat < "​$cmpl"​ 
-        echo -n "​$clear $stat" >&​2 +         ​echo -n "​$clear $stat" >&​2 
-        sleep 1 +         ​sleep 1 
-        read current < "​$sync"​ +         ​read current < "​$sync"​ 
-    done +     ​done 
-    echo "​$clear done." >&​2;​ +     ​echo "​$clear done." >&​2;​ 
- ​done +  done 
-  +   
- for dev in /dev/sd?; do +  for dev in /dev/sd?; do 
-    echo "​Starting offline data collection for $dev."​ +     ​echo "​Starting offline data collection for $dev."​ 
-    smartctl -t offline "​$dev"​ +     ​smartctl -t offline "​$dev"​ 
- done+  done
  
 =Example= =Example=
- [[root@simlin|~]]#​ cat /​proc/​mdstat  +  ​[[root@simlin|~]]#​ cat /​proc/​mdstat  
- ​Personalities : [[raid1]]  +  Personalities : [[raid1]]  
- md0 : active raid1 sdb1[[2]] sda1[[1]]+  md0 : active raid1 sdb1[[2]] sda1[[1]]
        ​2930266412 blocks super 1.0 [[2/2]] [UU]        ​2930266412 blocks super 1.0 [[2/2]] [UU]
        ​bitmap:​ 3/22 pages [[12KB]], 65536KB chunk        ​bitmap:​ 3/22 pages [[12KB]], 65536KB chunk
-  +  ​ 
- ​unused devices: <​none>​ +  unused devices: <​none>​ 
- ​[[root@simlin|~]]#​ cat /​sys/​block/​md0/​md/​sync_action +  [[root@simlin|~]]#​ cat /​sys/​block/​md0/​md/​sync_action 
- ​idle +  idle 
- ​[[root@simlin|~]]#​ echo '​check'​ > /​sys/​block/​md0/​md/​sync_action +  [[root@simlin|~]]#​ echo '​check'​ > /​sys/​block/​md0/​md/​sync_action 
- ​[[root@simlin|~]]#​ cat /​sys/​block/​md0/​md/​sync_action +  [[root@simlin|~]]#​ cat /​sys/​block/​md0/​md/​sync_action 
- ​check +  check 
- ​[[root@simlin|~]]#​ cat /​proc/​mdstat  +  [[root@simlin|~]]#​ cat /​proc/​mdstat  
- ​Personalities : [[raid1]]  +  Personalities : [[raid1]]  
- md0 : active raid1 sdb1[[2]] sda1[[1]]+  md0 : active raid1 sdb1[[2]] sda1[[1]]
        ​2930266412 blocks super 1.0 [[2/2]] [UU]        ​2930266412 blocks super 1.0 [[2/2]] [UU]
        ​[[>​....................]] ​ check =  0.0% (12672/​2930266412) finish=42340.2min speed=1152K/​sec        ​[[>​....................]] ​ check =  0.0% (12672/​2930266412) finish=42340.2min speed=1152K/​sec
        ​bitmap:​ 3/22 pages [[12KB]], 65536KB chunk        ​bitmap:​ 3/22 pages [[12KB]], 65536KB chunk
    
- unused devices: <​none>​+  ​unused devices: <​none>​
Tisk/export