Dimensione: 8310
Commento: piccole modifiche....questa è ok
|
Dimensione: 6733
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 12: | Linea 12: |
'''Rsync''' è uno strumento a [:AmministrazioneSistema/RigaDiComando:riga di comando] ma è possibile utilizzare diverse '''GUI''' per le quali si rimanda alle rispettive guide: * '''Grsync''': semplice interfaccia grafica che permette l'utilizzo delle funzioni principali di '''Rsync''' * '''Sbackup''': è un applicazione grafica, basata su '''Rsync''', che permette di effettuare un backup del sistema in modo abbastanza facile e del tutto funzionale, per informazioni consultare [:AmministrazioneSistema/BackupDelSistema/BackupConSbackup:relativa guida]. * '''Back in time''': è un semplice strumento che utilizza '''Rsync''' per compiere backup incrementali, per informazioni consultare [:GiuseppeTerrasi/Prove7:relativa guida]. * [http://live.gnome.org/DejaDup Déjà Dup]: un interfaccia molto semplice per effettuare backup con '''Rsync'''. Supporta la crittografia Programmi che utilizzano lo stesso algoritmo di Rsync: * '''rsnapshot''': è un'applicazione a [:AmministrazioneSistema/RigaDiComando:riga di comando] che consente di pianificare backup differenziali di filesystem locali o remoti, per informazioni consultare la [:AmministrazioneSistema/BackupDelSistema/Rsnapshot:relativa guida]. * '''Duplicity''': effettua backup di cartelle producendo archivi compressi in formato .tar e salvandoli su destinazioni locali io remote. Utilizza [:Sicurezza/GnuPg:GPG] per cifrare o firmare gli archivi in modo da renderli sicuri da tentativi di spionaggio o di modifica. Per informazioni consultare la [:GiuseppeTerrasi/Prove12:relativa guida]. |
Introduzione
Rsync è un leggero e versatile strumento per il backup. Può eseguire backup in locale o in remoto ed è molto efficiente data la caratteristica di effettuare la salvataggio, e quindi l'eventuale invio tramite network, esclusivamente dei file che hanno subito modifica rispetto all'ultima operazione di copia, rendendolo quindi ideale per i backup incrementali.
Prima di cominciare
Per eseguire correttamente un backup bisogna scegliere correttamente la cartella di destinazione della copia. Affinché i permessi possano essere conservati in maniera corretta è necessario che questa si trovi su un filesystem in grado di gestire i permessi Unix e Unix-like, evitare quindi i filesystem dei sistemi NT, quali ntfs e fat.
Installazione
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
È possibile eseguire un backup in rete come se fosse un backup in locale semplicemente utilizzando [:Server/Samba:Samba] montando la directory condivisa nel PC 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.
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.
È 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
[http://samba.anu.edu.au/rsync/ Sito web rsync]
[http://everythinglinux.org/rsync/ Guida su everythinglinux in inglese]
[https://help.ubuntu.com/community/rsync Guida sul wiki ubuntu inglese]
[http://samba.anu.edu.au/ftp/rsync/rsync.html man di rsync]