• Come fare il backup attivo del sito: Server dedicato

    Una delle problematiche ricorrenti per i possessori di un server dedicato su una struttura esterna è il backup regolare di tutti i file dei domini.

    Ci sono disponibili diverse soluzioni, alcuni dei quali eccellenti, altri meno. Quale sistema sia il migliore dipende dal modus operandi desiderato: attivo o passivo.


    Nella modalità attiva il server invia a un'ora specifica tutti i file a un altro computer, tramite rsync, ftp o simile protocollo. Ha il vantaggio che di regola non è necessario modificare le regole del firewall. Lo svantaggio sta però nel fatto che raramente sarà possibile inviare dati a un altro server remoto, perché sono "chiusi".



    Prima di tutto bisogna installare sul server destinazione un server rsync. Nei sistemi Linux rsync è di regola presente. Per i sistemi Windows è necessario installarsi DeltaCopy, come illustrato in questo articolo.

    Apriamo ora il file C:\DeltaCopy\deltacd.conf (/etc/rsyncd.conf in Linux). All'inizio del file è necessario impostare le configurazioni globali, più in basso quelle di un'area specifica, ad esempio:

    Linux:
    uid = nobody
    gid = nobody
    use chroot = yes
    max connections = 4
    syslog facility = local5
    pid file = /var/run/rsyncd.pid
    hosts allow = 192.168.0.1 192.168.0.2 192.168.0.3 1.2.3.4

    [backup]
    uid = root
    gid = root
    path = /backup
    comment = Backup Area
    read only = false

    Windows:
    use chroot = false
    hosts allow = 192.168.0.1 192.168.0.2 192.168.0.3 1.2.3.4

    [backup]
    path = /cygdrive/c/Backup
    comment = Backup Area
    read only = false

    In Windows, il percorso assoluto viene indicato da /cygdrive/c/Backup, dove /c/ indica il disco fisso (reale o di rete); se si tratta di un percorso di rete, è necessario creare un disco di rete in gestione rete. In Linux, è necessario fare un mount esplicito quando si tratta di una cartella di rete, in quanto non è possibile usare la sorgente e destinazione remoti. Vedremo in articoli futuri, come realizzare questi dischi di rete e mount.

    Ora che abbiamo impostato l'accesso all'area di backup, vediamo come realizzarlo dal server sorgente. Dalla riga di comando scriviamo uno dei seguenti comandi, lievemente diversi fra di loro a secondo le caratteristiche desiderate.

    Backup cumulativo

    Linux:
    rsync -rltDvWz --force /var/www 5.6.7.8::backup

    Windows:
    rsync -rltDvWz --force /cygdrive/c/inetpub 5.6.7.8::backup
    rsync -rltDvWz --force /cygdrive/d/xampp 5.6.7.8::backup

    Backup differenziale (mirror)

    Linux:
    rsync -rltDvWz --force --delete /var/www 5.6.7.8::backup

    Windows:
    rsync -rltDvWz --force --delete /cygdrive/c/inetpub 5.6.7.8::backup
    rsync -rltDvWz --force --delete /cygdrive/d/xampp 5.6.7.8::backup

    Nota: non si devono eseguire tutti i comandi di seguito, ma soltanto uno, e modificarlo secondo le necessità. E' buona pratica di creare a destinazione per ogni backup una configurazione dedicata, in modo da evitare incidenti:

    Linux:
    rsync -rltDvWz --force --delete /var/www 5.6.7.8::www

    Windows:
    rsync -rltDvWz --force --delete /cygdrive/c/inetpub 5.6.7.8::inetpub
    rsync -rltDvWz --force --delete /cygdrive/d/xampp 5.6.7.8::xampp

    Questi innocenti esempi fanno un sacco di cose utili. Prima di tutto, le opzioni forniscono un minimo di informazione visiva (v), assieme alle caratteristiche indispensabili del trasporto efficiente dei dati (z), e l'aggiornamento dei file e cartelle mancanti (resto delle opzioni) dalla cartella sorgente a server destinazione. Nota che l'area destinazione è definita nei rispettivi file di configurazione, per cui non deve essere specificata in dettaglio qui. Inoltre è buona pratica di tenere l'area backup/mirror inaccessibile (dal web) per evitare incidenti causa malconfigurazione.

    All'avvio di uno dei comandi illustrati, i computer si scambiano per primo la lista dei file e la destinazione viene aggiornata con i file e cartelle mancanti e saranno rimossi anche file e cartelle mancanti nel sistema sorgente. Poi, il sistema sorgente comprime i file, li invia e il sistema destinazione li decomprime e posiziona nella posizione corretta.

    I sistemi Windows creano i diritti di utenti particolari, che non sono accessibili facilmente, ma il programma di backup di sistema (backup.exe) è comunque in grado di leggerli senza alcun problema. Per poter navigare nelle cartelle con l'Explorer, è necessario ricopiare i diritti e gli utenti dalla cartella superiore ogni volta che si deve accedere. E' decisamente meglio utilizzare un'operazione pianificata per zippare i contenuti di queste cartelle con l'utente sistema e consultarli successivamente.

    Si può anche provare l'utilizzo delle opzioni esplicite, che forse non impostano diritti particolari. Il forse è dovuto al fatto che ogni sistema operativo si comporta in modo diverso e non ho avuto occasione di provare tutti in modo esauriente. Ad esempio:

    rsync -v -r -t --force --delete -z /cygdrive/c/inetpub 5.6.7.8::inetpub