|
Dimensione: 3774
Commento:
|
Dimensione: 8135
Commento: +versioni_supportate; +revisione_pagina
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 1: | Linea 1: |
| ## page was renamed from CristianBattistel/Prove0 | |
| Linea 3: | Linea 4: |
| [[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")]] |
<<BR>> <<Indice(depth=1)>> <<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=599983"; rilasci="24.04 22.04 20.04 19.10 18.04 16.04")>> |
| Linea 11: | Linea 10: |
| '''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. [[BR]] '''Rsync''' è uno strumento a [:AmministrazioneSistema/RigaDiComando:riga di comando] ma è possibile utilizzare diverse '''GUI''' per quali si rimanda alle rispettive guide: [[BR]] |
'''Rsync''' è uno strumento leggero e versatile per il backup, installato di base su '''Ubuntu'''. Consente di eseguire backup incrementali (rileva e salva solo i file modificati o aggiunti rispetto all'ultima operazione di copia, evitando un backup completo), sia in locale che in remoto. |
| Linea 14: | Linea 12: |
| * Grsync * Sbackup * Back in time |
= Prerequisiti = |
| Linea 18: | Linea 14: |
| Programmi che utilizzano lo stesso algoritmo di Rsync: | Tuttavia, prima di procedere con il backup, è consigliabile ed è necessario che: |
| Linea 20: | Linea 16: |
| * Déjà Dup = Installazione = '''Rsync''' è installato di base su '''Ubuntu''', tuttavia è preferibile controllare che i seguenti pacchetti siano [:AmministrazioneSistema/InstallareProgrammi:installati] prima di procedere col backup: * [apt://rsync rsync] * [apt://xinetd xinetd] * [apt://ssh ssh] |
* 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 di sistemi NT, come [[Hardware/DispositiviPartizioni/MontarePartizioni/Ntfs|NTFS]] e [[Hardware/DispositiviPartizioni/MontarePartizioni/Fat|FAT]]). * Qualora invece sia assente (ad esempio in caso di disinstallazione accidentale oppure in caso di [[Installazione/CdMinimale|installazioni minimali]], [[AmministrazioneSistema/InstallareProgrammi|Installare]] i seguenti pacchetti: [[apt://rsync | rsync]], [[apt://xinetd | xinetd]] e [[apt://ssh | ssh]]. {{{#!wiki note Per i backup locali, '''xinetd''' e '''ssh''' non sono indispensabili. }}} |
| Linea 34: | Linea 26: |
| ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Grandi/info.png,,center)]] ||<style="padding:0.5em; border:none;">È 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, digitare in un [[AmministrazioneSistema/Terminale|terminale]], il seguente comando:{{{ sudo rsync -av /percorso/cartelladiorigine /percorso/cartelladidestinazione }}}Sostituire `/percorso/cartelladiorigine` con il percorso della cartella contenente i dati da sottoporre a backup e `/percorso/cartelladidestinazione` con il percorso della cartella di destinazione del backup stesso. |
| Linea 36: | Linea 30: |
| Per eseguire un backup in locale è sufficiente eseguire questo comando: {{{ sudo rsync -azvv /percorso/Cartella1 /percorso/Cartella2 }}} prestando attenzione a sostituire `/percorso/Cartella1` con la cartella di origine e `/precorso/Cartella2` con la cartella di destinazione. [[BR]] |
|
| Linea 42: | Linea 32: |
| * `-a` copia ricorsivamente e conserva i permessi e le date dei file * `-z` comprime i dati * `-vv` abilita la modalità verbose |
||<tablestyle="width:50%;" -2:>'''Sintassi opzioni'''|| ||<:30%> '''Opzione''' || Risultato || ||<:>'''-a''' || copia ricorsivamente e conserva i permessi e le date dei file. || ||<:>'''-v''' || abilita la modalità verbose (mostrando le operazioni in corso ed eventuali errori). || |
| Linea 46: | Linea 37: |
| È 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 |
Per un backup incrementale completo, che cancelli nella cartella di destinazione i file non più presenti nella cartella di origine: * Aggiungere l'opzione '''--delete''':{{{ sudo rsync --delete -av /percorso/cartelladiorigine /percorso/cartelladidestinazione }}} * È anche possibile escludere dal backup alcuni dati usando l'opzione '''--exclude'''.<<BR>>Ad esempio, per escludere i file e le cartelle nascoste:{{{ sudo rsync --exclude=".*" --delete -av /percorso/cartelladiorigine /percorso/cartelladidestinazione |
| Linea 50: | Linea 45: |
| È 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 |
{{{#!wiki note Per ulteriori opzioni, consultare il manuale digitando il comando `man rsync` |
| Linea 54: | Linea 49: |
| Per ulteriori opzioni è possibile consultare il manuale di '''rsync''': {{{ man rsync }}} |
Per backup in rete su cartelle condivise con [[Server/Samba|Samba]], si può montare la risorsa remota e trattarla come una destinazione locale. È consigliabile utilizzare questo metodo solo su reti private per motivi di sicurezza. == Grsync == '''Grsync''' è una semplice interfaccia grafica per `rsync`. Permette solo le operazioni più semplici con le opzioni base, ma per backup di cartelle locali con destinazione su dischi locali è sufficiente. Per maggiori informazioni, consultare la relativa [[AmministrazioneSistema/BackupDelSistema/Grsync|guida]]. |
| Linea 60: | Linea 57: |
| Per eseguire un backup in rete è sufficiente eseguire questo comando: {{{ sudo rsync --delete -azvv -e ssh /percorso/Cartella1/ utenteremoto@hostremoto.domain:/percorso/Cartella2 |
Per eseguire un backup in rete, digitare in un [[AmministrazioneSistema/Terminale|terminale]] questo comando:{{{ sudo rsync --delete -azv -e ssh /percorso/cartella1 utenteremoto@hostremoto:/percorso/cartella2 }}}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, le opzioni utilizzate, oltre a quelle precedentemente descritte, sono: ||<tablestyle="width:50%;" -2:>'''Sintassi opzioni'''|| ||<:30%> '''Opzione''' || Risultato || ||<:>'''-z''' || comprime i dati durante il trasferimento. || ||<:>'''-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''' è la possibilità di effettuare un backup di un intero sistema senza utilizzare l'utente '''root''', mantenendo una maggiore sicurezza. == Configurazione == Per utilizzare '''Rsync Daemon''', procedere come segue: === Abilitare xinetd da parte di rsync === Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|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 di testo. === Avviare rsync tramite xinetd === Creare con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/xinetd.d/rsync` e inserire 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 } |
| Linea 63: | Linea 98: |
| sempre prestando attenzione a sostituire `/percorso/Cartella1` con la cartella di origine, `/percorso/Cartella2` con la cartella di destinazione e `utenteremoto@hostremoto.domain` con l'indirizzo dell'utente remoto. | |
| Linea 65: | Linea 99: |
| In questo caso l'opzione utilizzata, oltre a quelle precedentemente descritte comuni al backup in locale, è: | Infine riavviare '''xinetd''' per applicare le modifiche digitando in una finestra di terminale il seguente comando:{{{ sudo systemctl restart xinetd }}} |
| Linea 67: | Linea 103: |
| * `-e` specifica la shell remota da utilizzare, in questo caso `ssh` | === Modalità daemon === |
| Linea 69: | Linea 105: |
| = Rsync Daemon = | Per configurare '''rsync''' per la modalità daemon: |
| Linea 71: | Linea 107: |
| 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. | * Creare con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/rsyncd.conf` e incollare il seguente contenuto:{{{ max connections = 2 log file = /var/log/rsync.log timeout = 300 |
| Linea 73: | Linea 112: |
| [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'''. |
|
| Linea 74: | Linea 123: |
| Infine [[AmministrazioneSistema/Systemd|riavviare il servizio]] '''xinetd''' per applicare le modifiche digitando in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo systemctl restart xinetd }}} |
|
| Linea 75: | Linea 127: |
| === Impostare password === | |
| Linea 76: | Linea 129: |
| Per impostare la password creare con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/rsyncd.secrets` e scrivere quanto segue:{{{ utente:password }}}sostituire `utente` col nome utente utilizzato in precedenza e `password` con la password utilizzata per il login in macchina remota. |
|
| Linea 77: | Linea 133: |
| === Assegnare i permessi === | |
| Linea 78: | Linea 135: |
| Per assegnare i giusti [[AmministrazioneSistema/PermessiFile|permessi]] al file precedentemente creato: | |
| Linea 79: | Linea 137: |
| * Aprire il file `/etc/rsyncd.secrets` con un [[AmministrazioneSistema/Terminale|terminale]] digitando il seguente comando:{{{ sudo chmod 600 /etc/rsyncd.secrets }}} * Infine riavviare '''xinetd''' per applicare le modifiche digitando in una finestra di terminale il seguente comando:{{{ sudo systemctl restart xinetd }}} === Controllare l'esito del backup === 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 }}} |
|
| Linea 82: | Linea 157: |
| * * |
* [[http://samba.anu.edu.au/rsync/|Sito ufficiale]] * [[https://help.ubuntu.com/community/rsync|Documento originale]] * [[http://everythinglinux.org/rsync/|Guida su everythinglinux (in inglese)]] * [[http://samba.anu.edu.au/ftp/rsync/rsync.html|Manuale di rsync]] |
| Linea 86: | Linea 163: |
| CategoryAmministrazione CategoryDaRevisionare |
Guida verificata con Ubuntu: 22.04 24.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Rsync è uno strumento leggero e versatile per il backup, installato di base su Ubuntu. Consente di eseguire backup incrementali (rileva e salva solo i file modificati o aggiunti rispetto all'ultima operazione di copia, evitando un backup completo), sia in locale che in remoto.
Prerequisiti
Tuttavia, prima di procedere con il backup, è consigliabile ed è necessario che:
La cartella di destinazione si trovi su un filesystem in grado di gestire i permessi di tipo Unix-like (evitare quindi i filesystem di sistemi NT, come NTFS e FAT).
Qualora invece sia assente (ad esempio in caso di disinstallazione accidentale oppure in caso di installazioni minimali, Installare i seguenti pacchetti: rsync, xinetd e ssh.
Per i backup locali, xinetd e ssh non sono indispensabili.
Eseguire un backup
Backup in locale
Per eseguire un backup in locale, digitare in un terminale, il seguente comando:
sudo rsync -av /percorso/cartelladiorigine /percorso/cartelladidestinazione
Sostituire /percorso/cartelladiorigine con il percorso della cartella contenente i dati da sottoporre a backup e /percorso/cartelladidestinazione con il percorso della cartella di destinazione del backup stesso.
Le opzioni utilizzate in questo caso sono:
Sintassi opzioni |
|
Opzione |
Risultato |
-a |
copia ricorsivamente e conserva i permessi e le date dei file. |
-v |
abilita la modalità verbose (mostrando le operazioni in corso ed eventuali errori). |
Per un backup incrementale completo, che cancelli nella cartella di destinazione i file non più presenti nella cartella di origine:
Aggiungere l'opzione --delete:
sudo rsync --delete -av /percorso/cartelladiorigine /percorso/cartelladidestinazione
È anche possibile escludere dal backup alcuni dati usando l'opzione --exclude.
Ad esempio, per escludere i file e le cartelle nascoste:sudo rsync --exclude=".*" --delete -av /percorso/cartelladiorigine /percorso/cartelladidestinazione
Per ulteriori opzioni, consultare il manuale digitando il comando man rsync
Per backup in rete su cartelle condivise con Samba, si può montare la risorsa remota e trattarla come una destinazione locale. È consigliabile utilizzare questo metodo solo su reti private per motivi di sicurezza.
Grsync
Grsync è una semplice interfaccia grafica per rsync. Permette solo le operazioni più semplici con le opzioni base, ma per backup di cartelle locali con destinazione su dischi locali è sufficiente. Per maggiori informazioni, consultare la relativa guida.
Backup in rete
Per eseguire un backup in rete, digitare in un terminale questo comando:
sudo rsync --delete -azv -e ssh /percorso/cartella1 utenteremoto@hostremoto:/percorso/cartella2
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, le opzioni utilizzate, oltre a quelle precedentemente descritte, sono:
Sintassi opzioni |
|
Opzione |
Risultato |
-z |
comprime i dati durante il trasferimento. |
-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 è la possibilità di effettuare un backup di un intero sistema senza utilizzare l'utente root, mantenendo una maggiore sicurezza.
Configurazione
Per utilizzare Rsync Daemon, procedere come segue:
Abilitare xinetd da parte di rsync
Aprire con un editor di testo e con i 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 di testo.
Avviare rsync tramite xinetd
Creare con un editor di testo e con i privilegi di amministrazione il file /etc/xinetd.d/rsync e inserire 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
}Infine riavviare xinetd per applicare le modifiche digitando in una finestra di terminale il seguente comando:
sudo systemctl restart xinetd
Modalità daemon
Per configurare rsync per la modalità daemon:
Creare con un editor di testo e con i 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.
Infine riavviare il servizio xinetd per applicare le modifiche digitando in un terminale il seguente comando:
sudo systemctl restart xinetd
Impostare password
Per impostare la password creare con un editor di testo e con i privilegi di amministrazione il file /etc/rsyncd.secrets e scrivere quanto segue:
utente:password
sostituire utente col nome utente utilizzato in precedenza e password con la password utilizzata per il login in macchina remota.
Assegnare i permessi
Per assegnare i giusti permessi al file precedentemente creato:
Aprire il file /etc/rsyncd.secrets con un terminale digitando il seguente comando:
sudo chmod 600 /etc/rsyncd.secrets
Infine riavviare xinetd per applicare le modifiche digitando in una finestra di terminale il seguente comando:
sudo systemctl restart xinetd
Controllare l'esito del backup
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
