Avere un Backup è l’unico modo per ripristinare una macchina in caso di calamità. Il sistema gestisce due tipi di backup:
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:
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.
Assicurarsi che la destinazione contenente il backup sia raggiungibile (es. disco USB collegato).
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.
Tutti i dati sono sono posizionati nella directory /var/lib/nethserver/
:
/var/lib/nethserver/vmail/<user>
/var/lib/nethserver/ibay/<name>
/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).
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.
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:
Nota
La password di root/admin non viene ripristinata, verrà mantenuta quella impostata nel nuovo sistema.
I passi da eseguire sono:
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:
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.
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
In caso di installazione di software aggiuntivi, potrebbe esser necessario modificare la lista delle directory e dei file inclusi (o esclusi) dal backup.
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
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.
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.
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.
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.
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).