Ridimensiona le partizioni sottostanti in mdadm RAID1


9

Ho un NAS costruito in casa e devo leggermente riconfigurare parte del mio utilizzo dell'unità.

Ho un RAID1 mdadm composto da due unità da 3 TB. Ogni unità ha una partizione ext3 che utilizza l'intera unità. Devo ridurre la partizione ext3 su entrambe le unità e aggiungere una seconda partizione ext3 da 8 GB a una e scambiare una partizione di uguale dimensione all'altra. Penso di aver capito i passaggi, ma volevo una conferma.

  1. Ridimensiona il RAID mdadm resize2fs /dev/md0 [size]dove le dimensioni sono leggermente più grandi dello spazio attualmente utilizzato sull'unità
  2. Rimuovere una delle unità dal RAID mdadm /dev/md0 --fail /dev/sda1
  3. Ridimensiona l'unità rimossa con parted
  4. Aggiungi la nuova partizione all'unità con parted
  5. Ripristina l'unità sul RAID mdadm -a /dev/md0 /dev/sda1
  6. Ripeti 2-5 per l'altro dispositivo
  7. Ridimensiona il RAID per utilizzare la partizione completa mdadm --grow /dev/md0 -z max

C'è qualcosa che ho perso o che non ho preso in considerazione?

Risposte:


6

Sì, ti sei perso qualcosa di molto importante e l'ho imparato a mie spese. http://www.zdnet.com/blog/storage/why-raid-5-stops-working-in-2009/162 sottolinea che ora diventa statisticamente inevitabile avere settori danneggiati sull'array RAID.

Se si dispone di un array RAID degradato e una delle unità colpisce un settore danneggiato, mdraid arresterà l'array. Ciò accadrà durante il ripristino quando si aggiunge nuovamente l'unità, poiché è necessario leggere tutti i settori delle altre unità. Ho trascorso un bel po 'di tempo a riprendermi da questo, il che è davvero complicato. \

Quello che dovresti quindi fare in anticipo è: echo repair> / sys / block / mdX / md / sync_action

(controlla https://raid.wiki.kernel.org/index.php/Scrubbing )


Non riesco a eseguire questi comandi anche come sudo. Sto eseguendo un server Ubuntu. Avresti idea del perché?
J Spen,

Troppo tardi per te, ma per rispondere: la shell funziona come te e sudo non sta interpretando il reindirizzamento >. O incapsulare tutto in una subshell o usare tee. Preferisco tee:echo repair | sudo tee /sys/block/mdX/md/sync_action
ibotty

1: il puntatore al lavaggio è utile e appropriato; 2: È il 2018 ora, 9 anni fa. Sto usando diversi array RAID5, da 5 dischi da 8-10 TB ciascuno, ormai da diversi anni, e non è successo nulla di male (a parte uno degli armadi che muoiono ...). Penso che l'avvertimento di smettere di funzionare con RAID5 sia stato enormemente esagerato - la possibilità che ciò accada non è così grande come si immagina di essere, e può essere ulteriormente mitigata prestando attenzione al tasso di errore dell'HDD al momento dell'acquisto; 3: dovresti sempre avere un backup di tutto
Zak,

3

I tuoi passaggi sembrano buoni, con due eccezioni:

  1. Successivamente resize2fs, è necessario ridurre l'array mdadm. Ad esempio, fare mdadm --grow --size xxxcome passaggio 1a.

  2. Vorrei anche suggerire di fare tutto questo durante l'avvio in un CD di ripristino, come SystemRescueCd , e non mentre / dev / md0 è montato. Segui il ridimensionamento di fsck, solo per assicurarti che tutto sia a posto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.