Installare Debian: configurazione RAID

Installazione
Arrow left.png

Preparazione

Procedura generale

Casi specifici

Altro

Arrow right.png



Debian-swirl.png Versioni Compatibili

Tutte le versioni supportate di Debian
RAID

Sommario

Durante l'installazione
  1. Generale
  2. Raid 1 ed LVM
Dopo l'installazione
  1. Generale
  2. Raid 1

Introduzione

Lo scopo di questa guida è presentare un esempio di procedura per configurare un semplice RAID tra due dischi direttamente durante la fase di partizionamento dell'installazione.
Pertanto per quanto riguarda le operazioni precedenti e successive al partizionamento dei dischi il lettore è invitato a seguire una qualsiasi altra guida a sua discrezione.

Ipotesi

  • Due dischi nuovi e non formattati, di differente capacità.
  • Creazione di 5 partizioni (scelta chiaramente del tutto arbitraria):
    • /boot/EFI
    • swap
    • /
    • /home
    • /mnt/pippo
  • Delle precedenti partizioni solo swap, / e /home saranno messe in RAID (la quinta è una partizione con punto di mount personalizzato dell'utente, giusto per mostrare come si può sfruttare lo spazio in eccesso di uno dei dischi). Normalmente si usano dischi di simili capacità poiché la dimensione di un volume raid è determinata dalla partizione più piccola ad esso appartenente, inoltre nel caso di RAID 1 le partizioni non in RAID non beneficiano evidentemente di ridondanza, quindi se si rompe il disco su cui è presente una partizione non in RAID i dati di quest'ultima andranno inevitabilmente persi. In questa guida si è scelto di mostrare un RAID tra dischi di differente capacità per motivazioni puramente didattiche e per rimarcare il fatto che da un punto di vista strettamente tecnico non esiste alcun impedimento alla coesistenza su di uno stesso disco di partizioni RAID e normali.
  • Essendo disponibili solo due dischi sarà possibile scegliere solo tra le modalità 0 o 1; in questa guida si opterà arbitrariamente per la modalità 1, tuttavia la procedura è tale e quale anche per la modalità 0 (eccetto evidentemente il passaggio in cui si sceglie tra raid 1 o raid 0).

EFI

Questa guida è stata inizialmente scritta quando EFI era ancora una novità assoluta, tuttavia lo strumento di partizionamento dischi disponibile in fase di installazione non è cambiato. L'unica vera novità è che nei sistemi moderni è stata introdotta una nuova partizione dedicata all'avvio dei diversi sistemi operativi, EFI appunto. In particolare si sottolinea che

  ATTENZIONE

La partizione /boot/EFI NON deve essere messa in raid!


Prima parte

  IMPORTANTE

Rispetto a quanto mostrato qui di seguito l'utente dovrà creare anche una partizione /boot/EFI aggiuntiva su entrambi i dischi anche se questa NON deve essere messa in raid. A fine guida sarà mostrato come duplicare il contenuto della partizione EFI in uso in quella non utilizzata (quest'ultimo passaggio non è strettamente necessario).


   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   

Seconda parte

  ATTENZIONE
Per configurare il RAID è necessario scrivere sui dischi tutte le modifiche apportate alle partizioni, pertanto eventuali dati in essi contenuti andranno persi. Se finora avete seguito questa guida solo per fare una prova e non volete perdere il contenuto dei dischi, NON proseguite.


   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 

Terza parte

Terminata l'installazione si consiglia di duplicare il contenuto della partizione /boot/EFI in uso in quella non in uso. Il primo passo è quindi determinare qual'è quella in uso

$ mount | grep boot

Che restituirà qualcosa di simile a

/dev/sdb1 on /boot/efi type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)

In questo caso risulta evidente che la partizione di nostro interesse è /dev/sdb1. Si vuole ora elencare tutte le partizioni esistenti:

$ ls -la /dev/disk/by-partuuid/

Poiché in questa guida si è ipotizzato di usare due dischi e la partizione di boot in uso è /dev/sdb1 allora ragionevolmente sarà /dev/sda1 quella non utilizzata (questo è certamente vero se le partizioni sono state create nello stesso ordine su entrambi i dischi). Nell'output del precedente comando bisognerà dunque cercare due righe simili a queste:

[...]
lrwxrwxrwx 1 root root 10 Oct 1 22:43 0577b983-cf0a-4516-a3ab-92e19c3e9afe -> ../../sda1
lrwxrwxrwx 1 root root 10 Oct 1 22:43 98d444f0-df7f-41d9-8461-95ca566bd3a7 -> ../../sdb1
[...]

Gli UUIDs delle due partizioni EFI torneranno utili più avanti per un controllo finale. Avendo ormai verificato con certezza quali sono le partizioni EFI del sistema è possibile copiare il contenuto di quella in uso (/dev/sdb1) in quella inutilizzata (/dev/sda1):

# dd if=/dev/sdb1 of=/dev/sda1

A questo punto il sistema dovrebbe essere avviabile con uno qualsiasi dei due dischi. Vale comunque la pena di verificare che entrambe le partizioni EFI sia incluse nell'elenco di avvio:

efibootmgr -v

Se tutto va bene nell'output del precedente comando sarà possibile vedere gli UUID delle due partizioni EFI:

[...]
Boot....* debian HD(1,GPT,98d444f0-df7f-41d9-8461-95ca566bd3a7,0x800,0x100000)/File(\EFI\debian\shimx64.efi)
Boot....* debian HD(1,GPT,0577b983-cf0a-4516-a3ab-92e19c3e9afe,0x800,0x100000)/File(\EFI\debian\shimx64.efi)
[...]

Qualora mancasse quello della partizione /dev/sda1 dovrebbe essere possibile aggiungerlo con il seguente comando:

# efibootmgr --create --disk /dev/sda --part 1 --label "debian" --loader "\EFI\debian\shimx64.efi"
  ATTENZIONE

Poiché la partizione EFI non è in raid, ma quella in uso è stata solo duplicata, ogni modifica alla partizione EFI in uso non sarà automaticamente copiata nella seconda).


La partizioni EFI subiscono raramente delle modifiche, tipicamente quando si installa un nuovo sistema operativo e/o c'è un aggiornamento di uno di questi ad una versione più recente. Ogniqualvolta la partizione EFI in uso viene modifivata l'utente dovrà ricordarsi di eseguire nuovamente la procedura qui descritta al fine di mantenere aggiornata anche la partizione EFI di "backup".