Come configurare un array RAID 1 su Debian 12 dalla riga di comando

Questa procedura crea un array di dati RAID 1 software su Debian 12 (Bookworm) mdadm, formatta il dispositivo assemblato come ext4 e lo monta in modo permanente. Si presuppone che Debian sia già installato su un disco di sistema separato e che i due dischi RAID non siano utilizzati. I comandi seguenti sono esempi; i nomi e le dimensioni dei dispositivi devono essere verificati sul server che si sta configurando.

Avviso di perdita di dati: il partizionamento e la formattazione possono distruggere i dati. Non eseguire questi comandi su un disco che contiene file necessari. RAID 1 esegue il mirroring delle scritture; non sostituisce un backup indipendente e non può proteggere da cancellazione, danneggiamento del file system, furto o malware che modifica entrambe le copie.

Prima di iniziare: conferma i dischi di destinazione

  • È necessario disporre dei permessi di root o utilizzarli sudoprima di ogni comando amministrativo.
  • Utilizzare due dischi separati, idealmente con capacità uguale o quasi uguale. La capacità utilizzabile dell'array è limitata dal disco di capacità inferiore.
  • Mantieni il sistema operativo, il bootloader e la partizione di sistema EFI al di fuori di questa procedura di array di dati.
  • Eseguire il backup dei dati importanti e verificare che nessuno dei dischi di destinazione sia montato o in uso.

Debian 12 Bookworm fornisce gli strumenti qui utilizzati. Il comportamento di mdadm, sgdisk, e update-initramfsè documentato nel manuale di mdadm , nel manuale di sgdisk e nel manuale di update-initramfs di Debian Bookworm . Consultare questi riferimenti con le relative versioni se i pacchetti installati sono diversi.

Come configurare RAID 1 su Debian 12

1. Individua i dischi e verifica che non siano utilizzati.

Iniziate con un inventario di sola lettura:

lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS,MODEL,SERIAL
findmnt

Nell'esempio seguente, /dev/sdaè il disco di sistema Debian, mentre /dev/sdbe /dev/sdcsono dischi dati vuoti da 2 TB. I nomi che utilizzerete saranno probabilmente diversi. Confrontate dimensioni, modello, numero di serie, filesystem e punti di montaggio; non identificate un disco /dev/sdXsolo dal suo nome. Per un identificatore permanente, esaminate ls -l /dev/disk/by-id/e correlate ogni collegamento con il numero di serie stampato da lsblk.

Visualizzazione da terminale dell'output di lsblk che elenca il disco di sistema e due dischi dati non utilizzati.
Visualizzazione esemplificativa del terminale di lsblk: il disco di sistema è montato, mentre due dischi dati separati appaiono senza filesystem o punti di montaggio. Verificare questi dettagli sul proprio server prima di continuare.

2. Creare una partizione RAID Linux su ciascun disco vuoto

Per i dischi che risultano vuoti, crea una partizione GPT nello spazio disponibile e contrassegnala come RAID Linux. Ecco fd00il codice abbreviato di sgdisk per il RAID Linux:

sgdisk --new=1:0:0 --typecode=1:fd00 /dev/sdb
sgdisk --new=1:0:0 --typecode=1:fd00 /dev/sdc
partprobe /dev/sdb /dev/sdc
udevadm settle
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS /dev/sdb /dev/sdc

Sostituisci entrambi i nomi dei dischi di esempio con i due target verificati. --new=1:0:0Chiede a sgdisk di allocare la partizione 1 utilizzando lo spazio disponibile. Le modifiche alla tabella delle partizioni sono distruttive se si selezionano dischi con dati esistenti. Se sgdisk segnala un layout esistente, partizioni impreviste o errori poco chiari, interrompi e indaga invece di forzare la modifica. Verifica che le nuove partizioni (normalmente /dev/sdb1e /dev/sdc1) siano presenti e abbiano approssimativamente le stesse dimensioni.

Visualizzazione da terminale di sgdisk durante la creazione di una partizione RAID Linux su ciascun disco dati.
Visualizzazione a schermo dell'interfaccia utente di sgdisk durante la scrittura di una partizione RAID Linux su ciascuno dei due dischi dati selezionati. La partizione modifica i metadati del disco e deve essere applicata solo a unità vuote e verificate.

3. Installare mdadm e le utilità di partizionamento GPT

Aggiorna l'indice dei pacchetti e installa i comandi necessari:

apt update
apt install mdadm gdisk

Il gdiskpacchetto fornisce sgdisk. Esamina le modifiche proposte dal gestore dei pacchetti prima di accettarle, soprattutto su un host di produzione.

Visualizzazione da terminale dell'installazione di mdadm e gdisk tramite apt su Debian Bookworm.
Visualizzazione a schermo dell'installazione di mdadm e gdisk tramite apt dai repository di Debian Bookworm.

4. Creare l'array RAID 1 a due dischi

Utilizza le partizioni, non i dischi interi, come elementi dell'array. Sostituisci i /dev/disk/by-id/…-part1percorsi stabili che hai verificato, se disponibili; i nomi abbreviati riportati di seguito mantengono l'esempio leggibile:

mdadm --create /dev/md0 \
  --metadata=1.2 --level=1 --raid-devices=2 \
  /dev/sdb1 /dev/sdc1

--level=1Seleziona il mirroring, --raid-devices=2imposta i due membri e specifica esplicitamente la versione 1.2 dei metadati. La creazione dell'array scrive i metadati RAID e avvia la sincronizzazione. Non continuare se mdadm avverte che un membro contiene metadati RAID esistenti o dati di cui non si ha traccia. Non rispondere con --forcecome scorciatoia.

Visualizzazione da terminale del comando mdadm che crea un array RAID 1 a due dispositivi.
Visualizzazione esemplificativa del terminale del comando mdadm --create per un array RAID 1 a due membri. I nomi dei dispositivi mostrati sono esempi e non dischi verificati.

5. Monitorare la sincronizzazione e verificare entrambi i membri

Verifica l'avanzamento e lo stato attuale dell'array:

cat /proc/mdstat
mdadm --detail /dev/md0

Durante la sincronizzazione iniziale, /proc/mdstatpotrebbero essere visualizzati una percentuale di risincronizzazione e un tempo stimato; attendere il completamento prima di considerare il mirror completamente sincronizzato. Un array a due membri tipicamente completato mostra [2/2] [UU], il che significa che entrambi gli slot dei membri previsti sono presenti, mentre mdadm --detaildovrebbe elencare due dispositivi attivi e segnalare uno stato pulito. Questi indicatori descrivono lo stato di salute dell'array in quel momento; non costituiscono un controllo di backup né una garanzia che entrambi i dischi fisici rimarranno integri.

Visualizzazione da terminale di /proc/mdstat e mdadm --detail che mostra due membri RAID 1 attivi.
Visualizzazione illustrativa del terminale di /proc/mdstat e mdadm --detail. Un array a due membri integro mostra in genere entrambi i membri attivi e [2/2] [UU]; controllare l'output in tempo reale sull'host.

6. Salvare la definizione dell'array per l'assemblaggio all'avvio

Chiedi a mdadm la definizione dell'array:

mdadm --detail --scan /dev/md0

Esamina la ARRAYriga restituita e aggiungila esattamente a /etc/mdadm/mdadm.conf, utilizzando un editor e preservando le voci dell'array esistenti. Evita di aggiungere ciecamente copie ripetute. Il manuale mdadm.conf di Debian documenta questo file e come le definizioni degli array supportano l'assemblaggio. Su un'installazione standard di Debian che utilizza initramfs-tools, ricostruisci l'initramfs dopo aver modificato la configurazione:

update-initramfs -u

Questa operazione aggiorna l'immagine initramfs esistente; non crea un backup dell'array. Se il sistema utilizza un framework initramfs diverso o una configurazione di avvio non standard, seguire la procedura di aggiornamento documentata per tale framework.

Visualizzazione da terminale della configurazione di rilevamento dell'array mdadm seguita da update-initramfs.
Visualizzazione a schermo di una voce ARRAY rilevata tramite il comando mdadm --detail --scan e un comando di aggiornamento initramfs.

7. Creare un filesystem e montare l'array assemblato

Solo dopo aver verificato che /dev/md0si tratti del nuovo array, crea un filesystem ext4 su quel dispositivo:

mkfs.ext4 /dev/md0
mkdir -p /srv/raid1
mount /dev/md0 /srv/raid1
blkid /dev/md0

mkfs.ext4cancella i dati del filesystem sul dispositivo di destinazione. Eseguilo sul dispositivo array assemblato, non su /dev/sdb1o /dev/sdc1; la formattazione diretta di un membro aggirerebbe il mirror. Copia l'UUID del filesystem stampato da blkid, quindi aggiungi una riga come la seguente a /etc/fstab, sostituendo il segnaposto con l'UUID reale:

UUID=YOUR-FILESYSTEM-UUID /srv/raid1 ext4 defaults 0 2

L'utilizzo dell'UUID del filesystem evita di dipendere dall'ordine in cui Linux rileva i dischi. L'opzione finale 2abilita il normale ordine di controllo del filesystem secondario per i filesystem ext. Se si sceglie l' nofailopzione di montaggio in modo che l'avvio possa continuare quando lo storage non è disponibile, assicurarsi che i servizi non scrivano nella directory del punto di montaggio bare mentre l'array è assente.

Visualizzazione da terminale della formattazione di /dev/md0 con ext4 e del suo montaggio su /srv/raid1.
Visualizzazione a schermo dell'interfaccia utente per la creazione di un filesystem ext4 sul dispositivo array assemblato e il suo montaggio in /srv/raid1. La formattazione cancella i dati del filesystem esistente.

8. Verificare la configurazione del mount e pianificare un riavvio controllato.

Controlla la voce fstab senza riavviare il sistema, quindi verifica lo stato di montaggio e RAID risultante:

mount -a
findmnt /srv/raid1
df -hT /srv/raid1
cat /proc/mdstat
mdadm --detail /dev/md0

findmntDovrebbe risultare /dev/md0montato /srv/raid1con il filesystem previsto. In caso contrario, correggerlo /etc/fstabprima del riavvio; un errore di battitura può interrompere l'avvio o rendere il mount assente. Una volta superati i controlli, pianificare un riavvio controllato e ripetere i controlli di mount e RAID in seguito. Questo articolo non garantisce che un server specifico sia stato testato al riavvio.

Visualizzazione da terminale di una voce UUID di fstab e findmnt che conferma il montaggio RAID.
Visualizzazione a titolo esemplificativo da terminale di una voce UUID del filesystem in fstab e findmnt che mostra /dev/md0 montato su /srv/raid1.

Lista di controllo per la verifica rapida

  • Destinazione corretta: i controlli di numero di serie/modello e di montaggio hanno confermato che i dischi dati selezionati sono le unità non utilizzate previste.
  • Partizionamento: entrambe le partizioni dei membri esistono e hanno dimensioni simili.
  • Stato di salute dell'array: /proc/mdstat mostra entrambi i membri presenti come [UU]dopo la sincronizzazione e mdadm --detailsegnala due dispositivi attivi.
  • Filesystem e mount: findmnt /srv/raid1 mostra il dispositivo supportato dall'array e il filesystem previsto nel percorso specificato.
  • Persistenza: la definizione dell'array viene salvata in /etc/mdadm/mdadm.conf, l'UUID del filesystem si trova in /etc/fstab, e un riavvio pianificato conferma che entrambi sono assemblati e montati.

Limitazioni e considerazioni sul recupero

RAID 1 mantiene una copia dei blocchi scritti su ciascun membro, quindi il guasto di un singolo membro può lasciare l'array in uno stato degradato. Ciò non significa che tutte le applicazioni si comporteranno normalmente o che ogni guasto possa essere gestito senza tempi di inattività. Monitorare la macchina e intervenire tempestivamente in caso di avvisi relativi al disco o all'array. Prima di sostituire un disco guasto, utilizzare mdadm --detail /dev/md0identificatori di dispositivo stabili per determinare quale membro è interessato. Il disco di sostituzione deve normalmente avere una dimensione almeno pari a quella del membro esistente ed essere partizionato in modo da corrispondere all'array; l'aggiunta della partizione di sostituzione correttamente identificata mdadm --add /dev/md0 /dev/REPLACEMENT_PARTITIONavvia una ricostruzione. Verificare attentamente l'identità del dispositivo prima di eseguire qualsiasi comando di ripristino e monitorare la ricostruzione fino a quando entrambi i membri non tornano a uno stato integro.

Non utilizzare questa guida per la creazione di volumi di dati per replicare un filesystem root di Debian. Una configurazione RAID root avviabile comporta requisiti aggiuntivi relativi alla partizione di sistema EFI, all'installazione del bootloader, al contenuto di initramfs e ai test di ripristino. Allo stesso modo, non trattare una replica funzionante come una copia indipendente: mantieni un backup separato e versionato e testa il ripristino dei file da esso. Per informazioni generali sull'amministrazione di Debian SoftwareRAID, consulta la documentazione di Debian SoftwareRAID insieme ai manuali di Bookworm versionati collegati sopra.

Lascia un commento

Come modificare le impostazioni della webcam su Linux con Cameractrls

Come modificare le impostazioni della webcam su Linux con Cameractrls

Modifica le impostazioni della webcam su Linux con Cameractrls: regola l'esposizione, il colore, la riduzione dello sfarfallio e altri controlli supportati, quindi verifica le modalità video compatibili.

Come installare PhpStorm su Linux: Toolbox, Tar.gz, Snap e AUR

Come installare PhpStorm su Linux: Toolbox, Tar.gz, Snap e AUR

Installa PhpStorm su Linux con JetBrains Toolbox o con l'archivio tar.gz autonomo, oltre alle opzioni Snap e Arch AUR. Java è già incluso.

Come eseguire il backup di un CD-ROM come immagine ISO su Linux

Come eseguire il backup di un CD-ROM come immagine ISO su Linux

Crea un'immagine ISO di un CD-ROM su Linux con GNOME Disks o dd. Identifica l'unità ottica, monitora la copia, verifica l'immagine e scopri quando un disco danneggiato o un disco audio richiede uno strumento aggiuntivo.

Come installare Cisco Packet Tracer su Linux

Come installare Cisco Packet Tracer su Linux

Scarica Cisco Packet Tracer 9.0.1 per Ubuntu a 64 bit, installa il pacchetto DEB con APT, accetta la licenza nel Terminale ed effettua l'accesso per avviare un laboratorio.

Come configurare due pannelli su XFCE 4

Come configurare due pannelli su XFCE 4

Crea un pannello XFCE 4 separato per ogni schermo, assegna il secondo pannello all'uscita corretta, posizionalo e ridimensionalo, e aggiungi i launcher e gli elementi di stato necessari.

Come ritagliare un'immagine su Linux con GIMP

Come ritagliare un'immagine su Linux con GIMP

Rimuovere lo sfondo di una foto su Linux con GIMP: traccia il soggetto, elimina lo sfondo selezionato, mantieni la trasparenza ed esporta un file PNG riutilizzabile.

Applicazione desktop Google Tasks: come utilizzarla su un computer

Applicazione desktop Google Tasks: come utilizzarla su un computer

Apri Google Tasks in un browser, aggiungi un collegamento a Chrome o avvialo come un'app e gestisci le attività con data tramite Calendar e Gmail.

OKSampler: un campionatore musicale gratuito e semplice per creare ritmi da tastiera.

OKSampler: un campionatore musicale gratuito e semplice per creare ritmi da tastiera.

OKSampler associa i file MP3 ai tasti della tastiera e permette la riproduzione in loop dell'audio. Scopri cosa fa questo software gratuito ormai datato, dove finiscono le sue vecchie funzionalità e cosa controllare prima di scaricarlo.

Come giocare a Squad su Linux con Steam Proton

Come giocare a Squad su Linux con Steam Proton

Configura Squad su Linux con Steam Play e Proton, installa il gioco, scegli uno strumento di compatibilità e risolvi i problemi relativi ai sistemi anti-cheat.

Come installare Linux Mint Debian Edition 5 “Elsie” da USB

Come installare Linux Mint Debian Edition 5 “Elsie” da USB

Scarica e verifica l'immagine ISO di LMDE 5 archiviata, crea una chiavetta USB avviabile e scegli le impostazioni di installazione sicura. Elsie non è più supportato; consulta la versione corrente di LMDE.