Configurazione sistema · 6 min read · Feb 02, 2026

Imposta un sistema Raid1 LVM completamente crittografato (Lenny) - Pagina 7

Aggiunta del secondo disco

Passo 1: Copia dello schema delle partizioni

Quindi, una volta che tutto è installato e hai un nuovo server scintillante davanti a te, è tempo di aggiungere anche il secondo disco. Fino ad ora ho utilizzato un disco da 8GB. Dopo aver spento, ho aggiunto un nuovo disco da 16GB. Tuttavia, quel disco non è direttamente sincronizzato. Prima dobbiamo fare alcune cose.

Prima di iniziare a modificare la tabella delle partizioni del secondo disco, controllo prima lo stato dell’array emettendo questo comando

watch -n 6 cat /proc/mdstat

Ottengo un output simile a questo:

Ogni 6.0s: cat /proc/mdstat                                                                                                            Dom Nov 30 19:15:15 2008
Personalità : [raid1]
md3 : raid1 attivo sda4[0]
      4208960 blocchi [2/1] [U_]
md2 : raid1 attivo sda3[0]
      2931776 blocchi [2/1] [U_]
md1 : raid1 attivo sda2[0]
      995904 blocchi [2/1] [U_]
md0 : raid1 attivo sda1[0]
      248896 blocchi [2/1] [U_]
Dispositivi non utilizzati: 

Come puoi vedere, solo uno dei due dispositivi raid attivi è attualmente utilizzato. Questo significa che posso (dovrei) aggiungerne un altro per assicurarmi che se un disco fallisce, tutto sia ancora operativo. Esci dal monitoraggio con “ctrl-c”.

Devo scoprire quale disco rigido è quale (come sono nominati). Emetto:

fdisk -l

E ottengo questo output:

test:~# fdisk -l
Disco /dev/sda: 8589 MB, 8589934592 byte
255 teste, 63 settori/traccia, 1044 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificatore disco: 0x000d3f5d
   Dispositivo Avvio      Inizio         Fine      Blocchi   Id  Sistema
/dev/sda1   *           1          31      248976   fd  Linux raid autodetect
/dev/sda2              32         155      996030   fd  Linux raid autodetect
/dev/sda3             156         520     2931862+  fd  Linux raid autodetect
/dev/sda4             521        1044     4209030   fd  Linux raid autodetect
Disco /dev/sdb: 17.1 GB, 17179869184 byte
255 teste, 63 settori/traccia, 2088 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificatore disco: 0x00000000
Il disco /dev/sdb non contiene una tabella delle partizioni valida
Disco /dev/md0: 254 MB, 254869504 byte
2 teste, 4 settori/traccia, 62224 cilindri
Unità = cilindri di 8 * 512 = 4096 byte
Identificatore disco: 0x00000000
Il disco /dev/md0 non contiene una tabella delle partizioni valida
Disco /dev/md1: 1019 MB, 1019805696 byte
2 teste, 4 settori/traccia, 248976 cilindri
Unità = cilindri di 8 * 512 = 4096 byte
Identificatore disco: 0x93b342d4
Il disco /dev/md1 non contiene una tabella delle partizioni valida
Disco /dev/md2: 3002 MB, 3002138624 byte
2 teste, 4 settori/traccia, 732944 cilindri
Unità = cilindri di 8 * 512 = 4096 byte
Identificatore disco: 0x08040000
Il disco /dev/md2 non contiene una tabella delle partizioni valida
Disco /dev/md3: 4309 MB, 4309975040 byte
2 teste, 4 settori/traccia, 1052240 cilindri
Unità = cilindri di 8 * 512 = 4096 byte
Identificatore disco: 0x08040000
Il disco /dev/md3 non contiene una tabella delle partizioni valida
Disco /dev/dm-0: 3001 MB, 3001085952 byte
255 teste, 63 settori/traccia, 364 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificatore disco: 0x00000000
Il disco /dev/dm-0 non contiene una tabella delle partizioni valida
Disco /dev/dm-1: 1019 MB, 1019805696 byte
255 teste, 63 settori/traccia, 123 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificatore disco: 0xb604b75d
Il disco /dev/dm-1 non contiene una tabella delle partizioni valida
Disco /dev/dm-2: 4308 MB, 4308922368 byte
255 teste, 63 settori/traccia, 523 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificatore disco: 0x00000000
Il disco /dev/dm-2 non contiene una tabella delle partizioni valida
Disco /dev/dm-3: 4307 MB, 4307550208 byte
255 teste, 63 settori/traccia, 523 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificatore disco: 0x00000000
Il disco /dev/dm-3 non contiene una tabella delle partizioni valida

Possiamo vedere che /dev/sda è il disco attualmente in uso e /dev/sdb è il nuovo disco che ho aggiunto ora. Poiché il nuovo disco è più grande (nota: NON UTILIZZARE UN DISCO PIÙ PICCOLO!), significa che utilizziamo solo parzialmente lo spazio disponibile su di esso. Anche se eseguendo un raid1 non possiamo utilizzare più spazio del disco/partizione più piccolo comunque), tuttavia se il primo disco fallisce, puoi quindi ottenere anche un disco più grande ed espandere lo spazio lì. Quindi emetti questo comando:

sfdisk -d /dev/sda | sfdisk /dev/sdb

Passo 2: Modifica dello schema delle partizioni

Emetti ora il seguente comando per regolare la partizione “dati” lì. Le altre tre partizioni (/boot, swap, /) dovrebbero essere state create abbastanza grandi durante l’installazione:

cfdisk /dev/sdb

Usa i tasti freccia per navigare. Seleziona la partizione 4 (sdb4) e poi eliminala.

Quindi crea una nuova partizione nello spazio libero. Rendila primaria e lascia che utilizzi tutto lo spazio.

Vedrai che crea una nuova “sdb4” e il suo tipo è “Linux” ma non “Linux raid autodetect”. Seleziona il “Tipo” (mentre hai ancora selezionato sdb4) e inserisci come tipo di file system: FD. Ora sei tornato alla prima schermata e il tipo di partizione è stato modificato in “Linux raid autodetect”.

Ora seleziona l’opzione “Scrivi” e confermala con “sì”. Poi puoi uscire dallo strumento cfdisk.

Passo 3: Azzeramento del superblocco

Solo per essere sicuri di azzerare il superblocco su ciascuna partizione sul nuovo disco:

mdadm --zero-superblock /dev/sdb1  
mdadm --zero-superblock /dev/sdb2  
mdadm --zero-superblock /dev/sdb3  
mdadm --zero-superblock /dev/sdb4

Otterrai molti errori - il che è buono se è un nuovo disco che non è stato utilizzato prima.

Passo 4: Aggiunta delle nuove partizioni all’array raid

Ora esegui questi comandi:

mdadm --add /dev/md0 /dev/sdb1  
mdadm --add /dev/md1 /dev/sdb2  
mdadm --add /dev/md2 /dev/sdb3  
mdadm --add /dev/md3 /dev/sdb4

Questo aggiungerà le nuove partizioni agli array corrispondenti e inizierà a sincronizzarle. Puoi osservare i progressi con:

watch -n 6 cat /proc/mdstat

Passo 5: Aggiungi grub al nuovo disco rigido

Poiché grub è installato solo una volta e non è specchiato dal comando sopra, dobbiamo aggiungere manualmente grub. Esegui:

grub

Quindi esegui nel prompt di grub:

root (hd1,0)  
setup (hd1)

Il primo comando significa che grub deve utilizzare la partizione /dev/sdb1 come partizione /boot. Il secondo comando significa che grub deve installarsi nel settore di avvio di /dev/sdb. Grub inizia a contare i dischi rigidi e le partizioni con “0”. Quindi sda sarebbe hd0 e quindi sdb è hd1.

Esci da grub digitando “quit” e ora hai un setup raid1 crittografato con lvm. Ogni partizione può essere eseguita da sola.

Espandere l’LVM

Nel caso in cui il tuo disco rigido più piccolo fallisca e tu ne aggiunga uno nuovo più grande, allora vuoi espandere la dimensione al massimo. Ti dirò molto brevemente come questo può essere fatto con XFS. Prima, esegui:

mdadm --grow /dev/md3 --size=max

Ricorda: /dev/md3 è la nostra partizione /data. Con questo comando, l’array raid si espanderà al massimo. Prima che il disco rigido più piccolo fallisse, non era impostato al massimo su quello più grande. Dopo di che riavvia il sistema (so che ci sono modi senza riavviare, ma questo rende tutto molto più semplice).

Una volta riavviato, esegui questo comando:

pvresize /dev/mapper/md3_crypt

Dopo di ciò, devi scoprire di quanto puoi espandere la dimensione. Esegui questo comando:

vgdisplay -A

Questo restituirà alcune informazioni sull’LVM. Devi cercare questa riga qui:

Free PE / Size  xxxxxxx / yyyy GB

Il valore di “xxxxxxx” è importante. Esegui il seguente comando e sostituisci “xxxxxxx” con il valore effettivo. Assicurati anche di utilizzare il nome corretto del volume logico. Quello che ho creato è “DATA-DATA_MD3.

lvextend -l +xxxxxxx /dev/mapper/DATA-DATA_MD3

Se non sei sicuro del nome del tuo volume logico, esegui questo comando per elencare tutti i mapper:

ls /dev/mapper

Una volta eseguito, l’ultimo passo è ingrandire il filesystem effettivo. XFS rende questo molto facile:

xfs_growfs /data
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.