Backup¶
Avere un Backup è l’unico modo per ripristinare una macchina in caso di calamità. Il sistema gestisce due tipi di backup:
- backup della configurazione
- backup dei dati
Il backup della configurazione contiene solo le configurazioni di sistema. Viene eseguito automaticamente ogni notte e genera un nuovo archivio, /var/lib/nethserver/backup/backup-config.tar.xz
, solo in caso la configurazione sia cambiata nelle ultime 24 ore. Il backup della configurazione salva anche la lista dei moduli installati. Tutti i moduli saranno reinstallati durante il processo di ripristino. Lo scopo del backup della configurazione è quello di consentire un rapido ripristino della macchina in caso di disaster recovery. Dopo aver ripristinato la configurazione, la macchina può già essere messa in produzione mentre i dati vengono ripristinati in background.
Il backup dei dati è abilitato installando il modulo “Backup” e comprende i dati degli utenti come caselle di posta e cartelle condivise. Viene eseguito ogni notte e può essere completo o incrementale su base settimanale. Questo backup contiene anche il backup della configurazione.
Il backup dei dati può essere fatto su tre tipi di destinazione:
- USB: disco collegato via USB, utile in caso di molti dati, ma limitato dalla velocità dell’USB (Vedi: Configurazione disco USB)
- CIFS: cartella condivisa Windows, disponibile su tutti i NAS (Network Attached Storage)
- NFS: cartella condivisa Linux, disponibile su tutti i NAS, solitamente più veloce di CIFS
L’esito del backup può essere notificato all’amministratore o ad un indirizzo mail esterno.
Nota
La directory di destinazione è basta sul nome host del server: in caso di cambio FQDN, l’amministratore dovrà occuparsi di spostare manualmente i dati del backup dalla vecchia alla nuova directory.
Ripristino dati¶
Assicurarsi che la destinazione contenente il backup sia raggiungibile (es. disco USB collegato).
Linea di comando¶
Elenco contenuti¶
E’ possibile elencare i file presenti nell’ultimo backup con il comando:
backup-data-list
Il comando può richiedere del tempo in base alla dimensione del backup.
File e directory¶
Tutti i dati sono sono posizionati nella directory /var/lib/nethserver/
:
- Cartelle di posta:
/var/lib/nethserver/vmail/<user>
- Cartelle condivise:
/var/lib/nethserver/ibay/<name>
- Home utenti:
/var/lib/nethserver/home/<user>
Dopo aver individuato il file da ripristinare, usare il comando:
restore-file <position> <file>
Esempio, ripristinare nella directory /tmp
la cartella di posta test:
restore-file /tmp /var/lib/nethserver/vmail/test
Esempio, ripristinare la cartella di posta test nella posizione originale:
restore-file / /var/lib/nethserver/vmail/test
Il sistema supporta la possibilità di ripristinare directory (o file) ad una versione precedente rispetto all’ultimo backup.
Esempio, ripristinare un file alla versione di 15 giorni fa:
restore-file -t 15D /tmp "/var/lib/nethserver/ibay/test/myfile"
L’opzione -t
consente di specificare il numero di giorni (in questo caso 15).
Interfaccia grafica¶
Nel menu
è possibile cercare, selezionare e ripristinare una o più cartelle dal backup, navigando l’albero grafico con tutti i percorsi inclusi nel backup.Ci sono due opzioni di ripristino:
Ripristinare i dati nel percorso originale, i file correnti del filesystem sono sovrascritti con quelli ripristinati dal backup.
Ripristinare i dati nel percorso originale ma i file ripristinati dal backup sono spostati in una nuova directory (i file non sono sovrascritti) in questo percorso:
/complete/path/of/file_YYYY-MM-DD (YYYY-MM-DD is the date of restore)
Per usare il campo di ricerca, inserire almeno 3 caratteri e la ricerca partirà automaticamente, evidenziando le cartelle corrispondenti alla ricerca
Il ripristino delle cartelle avviene cliccando sul bottone Ripristino.
Nota
Tenendo premuto il tasto Ctrl è possibile effettuare la selezione multipla di cartelle.
Disaster recovery¶
Il sistema è ripristinato in due fasi: prima la configurazione, poi i dati. Al termine del ripristino, il sistema è pronto all’uso se i moduli sono già installati. E’ possibile installare i moduli opzionali sia prima che dopo il ripristino. Ad esempio, se il server di posta è installato, il sistema è già in grado di inviare e ricevere mail.
Altre configurazioni ripristinate:
- Utenti e gruppi
- Certificati SSL
Nota
La password di root/admin non viene ripristinata, verrà mantenuta quella impostata nel nuovo sistema.
I passi da eseguire sono:
- Installare una nuova macchina e configurarla con lo stesso nome host della vecchia
- Installare e configurare il backup dei dati
- Se la vecchia macchina era il gateway della rete, ricordarsi di reinstallare il modulo firewall
- Eseguire il ripristino della configurazione dalla pagina Backup (configurazione) > Ripristino nel Server Manager, oppure eseguendo il comando restore-config
- Se un avviso lo richiede, riconfigurare le interfacce di rete. Vedi Assegnamento delle interfacce di rete
- Verificare che la macchina sia funzionante
- Ripristinare i dati eseguendo il comando restore-data
Assegnamento delle interfacce di rete¶
Se la configurazione contiene una scheda di rete assente, le pagine Dashboard, Backup (configurazione) > Ripristino e Network mostrano un avviso. Questo può accadere per esempio nei seguenti casi:
- dopo il ripristino del backup della configurazione su un nuovo hardware
- una o più schede di rete sono state sostituite
- i dischi del sistema sono stati spostati su una nuova macchina
L’avviso porta a una pagina che elenca le schede di rete fisiche presenti nel sistema, evidenziando quelle che non hanno un ruolo assegnato. Per ogni scheda di questo tipo, un menù a discesa mostra i ruoli da assegnare.
Per esempio, se una scheda con ruolo orange è stata sostituita, il menù a discesa elencherà un elemento orange
in corrispondenza della nuova scheda di rete.
Lo stesso accade se la vecchia scheda era il componente di una interfaccia logica, come un bridge o un bond.
Selezionando un elemento dal menù a discesa, le impostazioni del ruolo sono trasferiti alla nuova scheda.
Premendo il pulsante Salva le modifiche vengono applicate.
Avvertimento
Assegnare con attenzione i ruoli alle nuove interfacce. Un errore può portare ad un sistema isolato dalla rete.
Se il ruolo mancante è green
una procedura interattiva chiede di aggiustare la configurazione all’avvio del sistema, per assicurare una connettività di rete minima e accedere di nuovo al Server Manager.
Ripristino moduli installati¶
Il processo di ripristino della configurazione reinstalla tutti i moduli presenti precedentemente.
Per evitare che i moduli vengano reinstallati, eseguire questo comando prima del ripristino:
config setprop backup-config reinstall disabled
Personalizzazione backup dati¶
In caso di installazione di software aggiuntivi, potrebbe esser necessario modificare la lista delle directory e dei file inclusi (o esclusi) dal backup.
Includere¶
Se si desidera includere una directory o un file nel backup dei dati, aggiungere una linea al file /etc/backup-data.d/custom.include
.
Ad esempio, per eseguire il backup di un software installato nella directory /opt
, aggiungere la linea:
/opt/mysoftware
Escludere¶
Se si desidera escludere una directory o un file dal backup dei dati, aggiungere una linea al file /etc/backup-data.d/custom.exclude
.
Ad esempio, per escludere dal backup tutte le directory chiamate Download, aggiungere la linea:
**Download**
Per escludere una casella di posta test, aggiungere la riga:
/var/lib/nethserver/vmail/test/
La stessa sintassi si applica al backup della configurazione. Le modifiche dovrebbero essere fatte all’interno del file /etc/backup-config.d/custom.exclude
.
Nota
Assicurarsi di non lasciare linee vuote nei file modificati.
Personalizzazione backup configurazione¶
Nella maggior parte dei casi non è necessario modificare il beackup della configurazione. Può essere utile, ad esempio, se è stato installato un certificato SSL personalizzato. In questo caso è possibile aggiungere il percorso del file che contiene il certificato al backup della configurazione.
Includere¶
Se si desidera includere una directory o un file nel backup della configurazione, aggiungere una linea al file /etc/backup-config.d/custom.include
.
Ad esempio, per eseguire il backup del file /etc/pki/mycert.pem
, aggiungere la linea:
/etc/pki/mycert.pem
Non aggiungere mai directory e file voluminosi al backup della configurazione.
Escludere¶
Se si desidera escludere una directory o un file dal backup della configurazione, aggiungere una linea al file /etc/backup-config.d/custom.exclude
.
Nota
Assicurarsi di non lasciare linee vuote nei file modificati. La sintassi del backup della configurazione supporta solo percorsi file e directory semplici.
Configurazione disco USB¶
Si consiglia di formattare i dischi USB in formato EXT3 per le migliori prestazioni. Generalmente i dischi utilizzano il filesystem NTFS, che non è supportato. Il filesystem FAT è invece supportato ma sconsigliato.
Per eseguire la formattazione, è necessario collegare il disco e identificarlo correttamente:
# dmesg | tail -20
Apr 15 16:20:43 mynethserver kernel: usb-storage: device found at 4
Apr 15 16:20:43 mynethserver kernel: usb-storage: waiting for device to settle before scanning
Apr 15 16:20:48 mynethserver kernel: Vendor: WDC WD32 Model: 00BEVT-00ZCT0 Rev:
Apr 15 16:20:48 mynethserver kernel: Type: Direct-Access ANSI SCSI revision: 02
Apr 15 16:20:49 mynethserver kernel: SCSI device sdc: 625142448 512-byte hdwr sectors (320073 MB)
Apr 15 16:20:49 mynethserver kernel: sdc: Write Protect is off
Apr 15 16:20:49 mynethserver kernel: sdc: Mode Sense: 34 00 00 00
Apr 15 16:20:49 mynethserver kernel: sdc: assuming drive cache: write through
Apr 15 16:20:49 mynethserver kernel: SCSI device sdc: 625142448 512-byte hdwr sectors (320073 MB)
Apr 15 16:20:49 mynethserver kernel: sdc: Write Protect is off
Apr 15 16:20:49 mynethserver kernel: sdc: Mode Sense: 34 00 00 00
Apr 15 16:20:49 mynethserver kernel: sdc: assuming drive cache: write through
Apr 15 16:20:49 mynethserver kernel: sdc: sdc1
Apr 15 16:20:49 mynethserver kernel: sd 7:0:0:0: Attached scsi disk sdc
Apr 15 16:20:49 mynethserver kernel: sd 7:0:0:0: Attached scsi generic sg3 type 0
Apr 15 16:20:49 mynethserver kernel: usb-storage: device scan complete
Un altro buon comando da utilizzare può essere:
lsblk -io KNAME,TYPE,SIZE,MODEL
In questo esempio, il disco è stato riconosciuto come device sdc.
Creare una unica partizione Linux sull’intero disco sdc:
echo "0," | sfdisk /dev/sdc
Creare il filesystem sulla partizione sdc1 assegnando una label, ad esempio backup:
mke2fs -v -T largefile4 -j /dev/sdc1 -L backup
Scollegare e ricollegare il disco USB:
E’ possibile utilizzare il comando seguente per simulare il collegamento del disco:
blockdev --rereadpt /dev/sdc
A questo punto la voce backup sarà selezionabile dalla pagina Backup (data).