Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 37 del 15/12/2010 16.26.01

Nascondi questo messaggio

BR Indice(depth=2)

Informazioni(rilasci="10.10 10.04 9.10 8.04"; forum="http://forum.ubuntu-it.org/index.php/topic,59072.0.html")

Introduzione

Rsync è un leggero e versatile strumento per il backup. Può eseguire backup locali o in remoti ed è molto efficiente data la caratteristica di effettuare dei salvataggi incrementali (salvare esclusivamente i file che hanno subito modifiche rispetto all'ultima operazione di copia).

Prima di cominciare

  1. E' necessario scegliere correttamente la cartella di destinazione della copia.
  2. E' necessario che la cartella di destinazione si trovi su un filesystem in grado di gestire i [:AmministrazioneSistema/PermessiFile:permessi] di tipo Unix-like (evitare quindi i filesystem dei sistemi NT, quali NTFS e FAT).

  3. Rsync è installato di base su Ubuntu, tuttavia è preferibile controllare che i pacchetti: [apt://rsync rsync], [apt://xinetd xinetd] e [apt://ssh ssh] siano [:AmministrazioneSistema/InstallareProgrammi:installati] prima di procedere col backup.

Eseguire un backup

Backup in locale

Per eseguire un backup in locale è sufficiente digitare il seguente comando in una finestra di terminale:

sudo rsync -azvv /percorso/cartella1 /percorso/cartella2

prestando attenzione a sostituire «/percorso/cartella1» con il percorso della cartella di origine e «/percorso/cartella2» con il percorso della cartella di destinazione.

Le opzioni utilizzate in questo caso sono:

  • -a: copia ricorsivamente e conserva i permessi e le date dei file.

  • -z: comprime i dati.

  • -vv: abilita la modalità verbose (mostrando le operazioni in corso ed eventuali errori).

È possibile eseguire un backup in rete come se fosse un backup in locale semplicemente utilizzando [:Server/Samba:Samba] e montando la cartella condivisa nel computer da cui si sta operando. È comunque consigliabile per la propria sicurezza utilizzare questo metodo solo per computer connessi in reti private e non in internet.

È possibile fare in modo che rsync cancelli nella cartella di destinazione i file non più presenti nella cartella di origine aggiungendo l'opzione --delete ottenendo quindi un backup incrementale completo:

sudo rsync --delete -azvv /percorso/cartella1 /percorso/cartella2

È anche possibile escludere dal backup alcuni file grazie all'opzione --exclude, ad esempio i file nascosti:

sudo rsync --exclude=".*/" --delete -azvv /percorso/cartella1 /percorso/cartella2

Per ulteriori opzioni è possibile consultare il manuale di rsync:

man rsync

Backup in rete

Per eseguire un backup in rete è sufficiente digitare questo comando in una finestra di terminale:

sudo rsync --delete -azvv -e ssh /percorso/cartella1 utenteremoto@hostremoto:/percorso/cartella2

sempre prestando attenzione a sostituire «/percorso/cartella1» con il percorso della cartella di origine, «/percorso/cartella2» con il percorso della cartella di destinazione e «utenteremoto@hostremoto» con l'indirizzo dell'utente remoto.

In questo caso l'opzione utilizzata, oltre a quelle precedentemente descritte comuni al backup in locale, è:

  • -e: specifica la shell remota da utilizzare, in questo caso ssh.

Rsync Daemon

In alternativa a ssh è possibile utilizzare Rsync Daemon per effettuare i backup in rete. Il vantaggio di utilizzare Rsync Daemon è quello di poter effettuare un backup di un intero sistema senza abilitare il login di root e quindi mantenere una maggiore sicurezza.

Per utilizzare Rsync Daemon procedere come segue:

  • [:AmministrazioneSistema/InstallareProgrammi:Installare] il pacchetto [apt://xinetd xinetd].

  • Per abilitare l'utilizzo di xinetd da parte di rsync aprire con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/default/rsync. Cercare la seguente riga:

    RSYNC_ENABLE=false

    e modificarla come segue:

    RSYNC_ENABLE=inetd
    salvare e chiudere l'editor.
  • Per avviare rsync tramite xinetd creare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/xinetd.d/rsync e incollare il seguente contenuto:

    service rsync
    {
        disable = no
        socket_type = stream
        wait = no
        user = root
        server = /usr/bin/rsync
        server_args = --daemon
        log_on_failure += USERID
    }
  • Per configurare rsync per la modalità daemon creare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/rsyncd.conf e incollare il seguente contenuto:

    max connections = 2
    log file = /var/log/rsync.log
    timeout = 300
    
    [share]
    comment = Public Share
    path = /home/share
    read only = no
    list = yes
    uid = nobody
    gid = nogroup
    auth users = utente
    secrets file = /etc/rsyncd.secrets

    prestando attenzione a sostituire la parola «utente» col nome dell'utente da autorizzare all'utilizzo di rsync.

  • Per impostare la password creare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/rsyncd.secrets e scrivere quanto segue:

    utente:password
    prestando attenzione a sostituire «utente» col nome utente utilizzato in precedenza e «password» con la password utilizzata per il login in macchina remota.
  • Per assegnare i giusti permessi al file precedentemente creato aprire un terminale e digitare il seguente comando:

    sudo chmod 600 /etc/rsyncd.secrets
  • Infine riavviare xinetd per applicare le modifiche digitano:

    sudo /etc/init.d/xinetd restart
  • Per controllare il buon esito delle operazioni è possibile digitare il seguente comando:

    sudo rsync utente@host::share
    sostituendo «utente» con il nome utente in uso e «host» con il nome host in uso.

    Il risultato del precedente comando dovrebbe essere simile a questo:

    drwxr-xr-x        4096 2006/12/13 09:41:59 .
    drwxr-xr-x        4096 2006/11/23 18:00:03 folders

Ulteriori risorse


CategoryNuoviDocumenti