Come modificare / correggere l’array RAID 10 dmraid rilevato erroneamente (FakeRaid)

Sto cercando di ottenere timore di rilevare correttamente un array RAID 10 esistente, che funziona bene in Windows 7. In sintesi, la configurazione del drive e il partizionamento del BIOS è il seguente:


L’installazione di Ubuntu si trova su una coppia di dischi con striping partizionata e funziona perfettamente. Le due partizioni (180 GB e 58 GB) corrispondono alle seguenti LVM (mi sono preso la libertà di formattare i dati per la leggibilità):

 # $ sudo dmsetup info / dev / dm- {1,2,3,4,5}
 | ---------- + -------- + --------------- + ----------- + - --------- + -------- |
 |  dev / dm-0 |  ubuntu |  pdc_hjijcjji |  contenitore |  |  58 GB |
 |  dev / dm-1 |  ubuntu |  pdc_hjijcjji1 |  / |  ext4 |  54 GB |
 |  dev / dm-2 |  ubuntu |  pdc_hjijcjji2 |  |  esteso |  4,3 GB |
 |  dev / dm-3 |  vinci 7 |  pdc_fjhhdeeg |  contenitore |  |  180 GB |
 |  dev / dm-4 |  ubuntu |  pdc_hjijcjji5 |  |  scambiare |  4,3 GB |
 |  dev / dm-5 |  vinci 7 |  pdc_fjhhdeeg1 |  |  ntfs |  180 GB |
 | ---------- + -------- + --------------- + ----------- + - --------- + -------- | 

L’array Raid 10 (che è quello che ho bisogno di aiuto per farlo funzionare in Ubuntu) è composto da quattro dischi da 2TB e fornisce un array da 4TB risultante. Sembra come se dmraid sia a conoscenza di questo array, dato il seguente output:

 # $ sudo dmraid -r
 | ---------- + -------- + ------------------ + -------- + - -------- + ---------------- + --------- |
 |  Dispositivo |  Formato |  Nome |  Tipo |  Stato?  |  Dimensione (settori) |  ?  |
 | ---------- + -------- + ------------------ + -------- + - -------- + ---------------- + --------- |
 |  / dev / sdf |  pdc |  pdc_fjhhdeeg |  striscia |  ok  175781248 |  data @ 0 |
 |  / dev / sde |  pdc |  pdc_fjhhdeeg |  striscia |  ok  175781248 |  data @ 0 |
 |  / dev / sdd |  pdc |  pdc_bjibibahah-1 |  striscia |  ok  1758766336 |  data @ 0 |
 |  / dev / sdc |  pdc |  pdc_bjibibahah-1 |  striscia |  ok  1758766336 |  data @ 0 |
 |  / dev / sda |  pdc |  pdc_bjibibahah-0 |  striscia |  ok  1758766336 |  data @ 0 |
 |  / dev / sdb |  pdc |  pdc_bjibibahah-0 |  striscia |  ok  1758766336 |  data @ 0 |
 | ---------- + -------- + ------------------ + -------- + - -------- + ---------------- + --------- | 

Il che mi scaccia un po ‘, dato che mi aspetto che anche l’array, pdc_hjijcjji , pdc_hjijcjji mostrato qui. Forse, dato che è una partizione all’interno di un disco a strisce, è inclusa in pdc_fjhhdeeg . In ogni caso, la matrice a strisce sta funzionando bene, quindi non sono troppo preoccupato per questo.

pdc_hjijcjji presenta quando si esegue dmraid -s :

 # $ sudo dmraid -s
 | ----------- + ---------------- + -------------- + ----- --------- |
 |  Nome |  pdc_bjibibahah |  pdc_fjhhdeeg |  pdc_hjijcjji |
 | ----------- + ---------------- + -------------- + ----- --------- |
 |  |  Superset |  Set attivo |  Set attivo |
 |  Dimensione (-h) |  1,677 TB |  167,6 GB |  54,0 GB |
 |  Dimensione |  3517532672 |  351562496 |  113281024 |
 |  Stride |  128 |  128 |  128 |
 |  Tipo |  raid10 |  striscia |  striscia |
 |  Status |  ok  ok  ok
 |  Sottosistemi |  2 |  0 |  0 |
 |  Devs |  4 |  2 |  2 |
 |  Pezzi di ricambio  0 |  0 |  0 |
 | ----------- + ---------------- + -------------- + ----- --------- |
 # La dimensione è in blocchi di 512 byte. 

Dove pdc_bjibibahah sembra corrispondere alla matrice Raid10, tranne che ha una dimensione strana (1.677 TB, come indicato per circa 4 TB). Cercando di triggersrlo utilizzando i risultati dmraid -ay in un dispositivo montato a 1.677 TB, vengono riportati come dati non allocati.

Eseguendo sudo dmraid -s -si sull’array bjibibahah :

 # $ sudo dmraid -s -si
 | ----------- + ---------------- + ------------------ + - ----------------- |
 |  Nome |  pdc_bjibibahah |  pdc_bjibibahah-0 |  pdc_bjibibahah-1 |
 | ----------- + ---------------- + ------------------ + - ----------------- |
 |  |  Superset |  Sottoinsieme |  Sottoinsieme |
 |  Dimensione (-h) |  1,638 TB |  1,638 TB |  1,638 TB |
 |  Dimensione |  3517532672 |  3517532672 |  3517532672 |
 |  Stride |  128 |  128 |  128 |
 |  Tipo |  raid10 |  striscia |  striscia |
 |  Status |  ok  ok  ok
 |  Sottosistemi |  2 |  0 |  0 |
 |  Devs |  4 |  2 |  2 |
 |  Pezzi di ricambio  0 |  0 |  0 |
 | ----------- + ---------------- + ------------------ + - ----------------- |

Ho provato a configurare gli array manualmente, ma senza successo, e la pagina man non si sta rivelando troppo utile. Se qualcuno ha un suggerimento su come configurare dmraid , o per convincerlo a cambiare la configurazione dell’array RAID10, sarei davvero grato.

Qui ci sono alcuni risultati, dovrebbe essere rilevante:

 $ sudo dmraid -V
 dmraid versione: 1.0.0.rc16 (2009.09.16) condivisa
 versione di libreria dmraid: 1.0.0.rc16 (2009.09.16)
 versione device-mapper: 4.20.0

 $ sudo dmsetup --version
 Versione della biblioteca: 1.02.48 (2010-05-20)
 Versione del driver: 4.20.0

 $ uname -srvm
 Linux 3.0.0-16-generic # 28-Ubuntu SMP Ven 27 gen 17:44:39 UTC 2012 x86_64

 $ lsb_release -a
 Non sono disponibili moduli LSB.
 ID distributore: Ubuntu
 Descrizione: Ubuntu 11.10
 Versione: 11.10
 Nome in codice: onirico

Inoltre, l’installazione RAID del RAID dell’array RAID10 corrisponde ai seguenti dischi all’interno di ubuntu: Code:

 | --------- + ------------ + -------------- |
 |  Porta: ID |  Assegnazione |  Nome disco del sistema operativo |
 | --------- + ------------ + -------------- |
 |  01:01 |  LD 1-1 |  / dev / sda |
 |  02:01 |  LD 1-2 |  / dev / sdb |
 |  03:01 |  LD 1-3 |  / dev / sdc |
 |  04:01 |  LD 1-4 |  / dev / sdd |
 | --------- + ------------ + -------------- |

Aggiornamento: ho dimenticato di dire che sono su una scheda madre Crosshair V, utilizzando il controller AMD SB950 .

Aggiornamento 2: quando si esegue sudo dmraid -s -ccs pdc ottengo i seguenti messaggi di errore:

 ERRORE: pdc: numero errato di dispositivi nel set RAID "pdc_fjhhdeeg" [1/2] su / dev / sdf
 ERRORE: pdc: numero errato di dispositivi nel set RAID "pdc_fjhhdeeg" [1/2] in / dev / sde
 ERRORE: pdc: numero errato di dispositivi nel set RAID "pdc_bjibibahah-1" [1/2] su / dev / sdd
 ERRORE: pdc: numero errato di dispositivi nel set RAID "pdc_bjibibahah-1" [1/2] su / dev / sdc
 ERRORE: pdc: numero errato di dispositivi nel set RAID "pdc_bjibibahah-0" [1/2] su / dev / sdb
 ERRORE: pdc: numero errato di dispositivi nel set RAID "pdc_bjibibahah-0" [1/2] su / dev / sda
 * ERR * 

Se sudo dmraid -s -ccs pdc, e scrivo solo sudo dmraid -s -ccs ottengo l’ancor più criptico:

 * ERR *
 * ERR *
 * ERR *

Aggiornamento 3: Sono riuscito a rimuovere l’array mal configurato utilizzando sudo dmraid -rE come suggerito in un QA di askubuntu qui . Ricevo ancora gli errori “ERROR: pdc: wrong # of devices in RAID set …”, che sembrano ostacolare ulteriori progressi. Continuerò a cercare soluzioni a questo problema.

Modifica: C’è qualche informazione che posso aggiungere che potrebbe aiutare qualcuno ad aiutarmi?

OK 🙂 Quindi ecco il tuo objective:

4 x HDD (2 TB), RAID 1+0. Single 4TB partition.

Vedendo che si tratta solo di un report di circa 1,6 TB, quella quantità di spazio mancante suggerisce per me un problema di metadati.

Vorrei suggerire di abbattere l’intero array e assicurare che i metadati dmraid -rE cancellati usando dmraid -rE . Quindi, una volta che questi dischi non vengono più visualizzati, provare a creare un semplice RAID1 dai dischi 2 2T, la capacità del contenitore dovrebbe essere più vicina a 1,8-1,9 e 1,6. Una volta verificato, crea la tua striscia, che dovrebbe solo aggiungere i due insieme. Se questo non funziona potresti avere un bug nel firmware o nel sistema dmraid stesso.

dmraid è ummm … interessante, data la scelta preferirei non usarlo. Stai praticamente prendendo tutta la complessità di md-raid, senza alcun aumento delle prestazioni, e poi mescolando in una manciata di diversi formati di metadati di diversi fornitori, e poi condividendo i metadati con più sistemi operativi, credendo che il sistema operativo che hai condiviso con non rovina i metadati.

Potresti voler testare in realtà la sostituzione dei membri falliti dopo aver ottenuto questa configurazione stabile, un RAID è solo un grande singolo punto di errore se non puoi ripararlo. In bocca al lupo.

In risposta al tuo problema dmraid -rE A questo punto l’unica opzione è dd if = / dev / zero … e cancella i dischi.