Come si sposta un RAID software Linux su una nuova macchina?


20

Ho una macchina di nuova costruzione con una nuova installazione di Gentoo Linux e un array RAID 5 software di un'altra macchina (4 dischi IDE collegati a controller PCI off-board). Ho spostato con successo i controller nella nuova macchina; le unità sono rilevate dal kernel; e ho usato mdadm --examine e verificato che la singola partizione RAID sia rilevata, pulita e persino nell'ordine "giusto" (hde1 == unità 0, hdg1 == unità 1, ecc.).

Quello a cui non ho accesso sono i file di configurazione originali dal computer più vecchio. Come devo procedere per riattivare questo array senza perdere i dati?

Risposte:


20

Hai davvero bisogno del file mdadm.conf originale. Ma, poiché non lo hai, dovrai ricrearlo. Innanzitutto, prima di fare qualsiasi cosa, leggi su mdadm tramite la sua pagina di manuale . Perché rischiare di perdere i tuoi dati a causa di una situazione o di un comando che non avevi capito?

Detto questo , questo consiglio è a tuo rischio e pericolo. Puoi facilmente perdere tutti i tuoi dati con i comandi sbagliati. Prima di eseguire qualsiasi cosa, ricontrolla le ramificazioni del comando . Non posso essere ritenuto responsabile per la perdita di dati o altri problemi relativi a qualsiasi azione intrapresa, quindi ricontrolla tutto .

Puoi provare questo:

mdadm --assemble --scan --verbose /dev/md{number} /dev/{disk1} /dev/{disk2} /dev/{disk3} /dev/{disk4}

Questo dovrebbe darti alcune informazioni con cui iniziare a lavorare, insieme all'ID. Creerà anche un nuovo dispositivo array / dev / md {numero}, da lì dovresti essere in grado di trovare eventuali supporti. Non utilizzare l' --autoopzione, la verbosità della pagina man implica che in determinate circostanze ciò potrebbe causare una sovrascrittura delle impostazioni dell'array sulle unità. Questo probabilmente non è il caso, e probabilmente la pagina deve essere riscritta per chiarezza, ma perché rischiare?

Se l'array si assembla correttamente e tutto è "normale", assicurati di scrivere e archiviare il tuo mdadm.conf /etc, in modo da averlo al momento dell'avvio. Includere il nuovo ID dall'array nel file per aiutarlo lungo.


+1 - Bene! Ho spostato diversi set RAID-1 e RAID-5 tra macchine Linux. Una cosa di cui non sono sicuro è dove vedi le informazioni su "--auto". Dalla pagina del manuale su una macchina CentOS 5.1, vedo solo che "--auto" crea una voce (o voci) / dev / mdX per l'array. Non vedo nulla che possa indicare che scriverebbe sui dischi. (In effetti, "--auto = yes" è il valore predefinito in mdadm su CentoS 5.1 se "--auto" non è specificato.) "--Update" può essere tuo amico se devi spostare un array in un altro numero mdX dall'originale specificato nel superblocco.
Evan Anderson,

Eccellente, posso montare con successo l'array. L'unico problema persistente è che il RAID non si presenta dopo un riavvio; Devo rieseguire mdadm -Av / dev / md0. Qualche idea sul perché?
Romandia,

Hai ricreato il file /etc/mdadm.conf? Il sistema cercherà in questo file all'avvio per trovare le matrici.
Avery Payne,

L'ho fatto. Ciò che ha fatto la differenza è stata la ricompilazione del kernel con CONFIG_MD_AUTO. Inizialmente non l'avevo fatto perché pensavo che ci fosse un modo in cui mdadm lo avrebbe fatto. Ho letto da qualche parte che il codice del kernel non è robusto come usare mdadm per il montaggio automatico, ma non riesco più a trovare nulla per il backup.
Romandia,

2

Volevo solo aggiungere la mia risposta completa per Debian almeno.

  • Installa il gestore raid tramite -> sudo apt-get install mdadm
  • Cerca i vecchi dischi raid tramite -> sudo mdadm --assemble --scan

  • A questo punto, mi piace controllare BLKIDe montare manualmente il raid per confermare.

    blkid mount /dev/md0 /mnt

  • Aggiungi informazioni a mdadm.conf tramite -> mdadm --detail --scan >> /etc/mdadm/mdadm.conf
  • Aggiorna initramfs tramite -> update-initramfs -u

  • Risoluzione dei problemi:

Assicurati che l'output di mdadm --detail --scancorrisponda al tuo/etc/mdadm/mdadm.conf

    nano /etc/mdadm/mdadm.conf

    ARRAY /dev/md/0 level=raid5 num-devices=3 metadata=00.90 UUID=a44a52e4:0211e47f:f15bce44:817d167c
  • Esempio FSTAB

    /dev/md0    /mnt/mdadm   ext4    defaults,nobootwait,nofail     0    2
    

/unix/23879/using-mdadm-examine-to-write-mdadm-conf/52935#52935

/ubuntu/729370/can-i-transfer-my-mdadm-software-raid-to-a-new-system-in-case-of-hardware-failur

Come si sposta un RAID software Linux su una nuova macchina?


1
mdadm -Ac partitions -m 0 /dev/md0

Scansiona tutte le partizioni e tutti i dispositivi elencati in / proc / partitions e assembla / dev / md0 da tutti questi dispositivi con un superblocco RAID con un numero minore di 0.

se la configurazione ha avuto successo puoi aggiungere --detail --scan >> /etc/mdadm/mdadm.conf in modo che venga rilevato all'avvio

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.