Il backup regolare dei file è parte integrante dell'amministrazione del server.
Anche se puoi scaricare ogni singolo file quando vuoi salvarlo, usando rsync
semplifica il compito di eseguire il backup perché scarica solo i file che sono stati modificati, risparmiando tempo e larghezza di banda.
Installa rsync
rsync
è disponibile sulla maggior parte delle distribuzioni Linux per impostazione predefinita. Se devi installarlo manualmente, tuttavia, puoi farlo utilizzando il gestore di pacchetti della tua distribuzione. Ad esempio, i seguenti comandi sono alcuni comuni rsync
di Linux® comandi di installazione:
Il sistema operativo Ubuntu
sudo aptitude install rsync
Gentoo
sudo emerge rsync
CentOS
sudo yum install rsync
Nota: Se stai scaricando file su un altro sistema, entrambi i sistemi devono avere rsync
installato.
Utilizza SSH con rsync
Per proteggere i file e il sistema, assicurati di utilizzare la crittografia durante il caricamento o il download di file. L'esempio seguente utilizza il protocollo Secure Shell (SSH) con rsync
per mantenere i tuoi dati al sicuro. Se preferisci non utilizzare SSH, ti verrà richiesta una password ogni volta che esegui rsync
.
Se usi rsync
per automatizzare i backup, assicurati che il server di destinazione (in cui si trova la directory di backup) abbia accesso al server di origine.
Per eseguire il backup dei file da un server all'altro, esegui il seguente comando sul server di destinazione:
rsync -e 'ssh -p 30000' -avlP --delete --stats [email protected]:/home/demo /backup
La seguente spiegazione copre ogni parte del comando:
-
-e 'ssh -p 30000'
Garantisce che
rsync
utilizza il protocollo SSH e imposta la porta. -
-avl
Un collegamento che contiene le seguenti opzioni:
-
-a
Archivia . Salva le impostazioni di autorizzazione per i file.
-
-v
Prolisso . Restituisce ulteriori informazioni su cosa
rsync
sta facendo. Puoi modificare la quantità di informazionirsync
restituisce eliminando-v
oppure puoi richiedere maggiori informazioni con-vv
o-vvv
. Impostazione della modalità dettagliata con-vvv
restituisce tutte le informazioni sursync
processo. -
-l
Link . Conserva tutti i collegamenti simbolici (collegamenti simbolici) che hai creato sul server di origine.
-
-P
Progressi . Visualizza l'avanzamento di ogni trasferimento di file.
-
-
--delete
Elimina i file dalla cartella di destinazione che non sono più necessari (ovvero, sono stati eliminati dalle cartelle di origine). In genere, elimini i file per risparmiare spazio, ma se pensi di averne bisogno in seguito, assicurati di averne una copia di backup prima di eliminarla.
-
--stats
Aggiunge più output sullo stato del trasferimento dei file.
-
[email protected]:/home/demo
Le cartelle di origine di cui eseguire il backup.
Nota:
rsync
distingue tra/home/demo
e/home/demo/
. Con la barra finale,rsync
copia il contenuto della directory, ma non ricrea la directory. Questo esempio esegue il backup di una cartella da un sistema all'altro, quindi omettendo la barra finale si replica l'intera struttura della directory. -
/backup/
Identifica la cartella sul server di backup in cui posizionare i file.
Il tuo output dovrebbe essere simile al seguente esempio:
receiving file list ...
31345 files to consider
./
tuning-primer.sh
42596 100% 533.30kB/s 0:00:00 (xfer#2, to-check=31331/31345)
bin/
bin/Backup
618 100% 7.74kB/s 0:00:00 (xfer#3, to-check=31310/31345)
bin/Search
455 100% 5.70kB/s 0:00:00 (xfer#4, to-check=31309/31345)
configs/
configs/php.ini
114 100% 1.43kB/s 0:00:00 (xfer#5, to-check=31307/31345)
public_html/
...
...
Nell'esempio precedente, rsync
riceve un elenco di 31.345 file e, poiché questa è la prima volta rsync
è stato eseguito, li scarica tutti. Quando rsync
viene eseguito di nuovo, solo i file che sono stati modificati dall'ultimo backup vengono sincronizzati nella cartella di backup.