GNU/Linux >> Linux Esercitazione >  >> Debian

Il comando Linux rsync:come usarlo

Come quasi tutti i comandi in Linux, rsync ha una sintassi di base che dobbiamo seguire.

rsync [OPTION]... SRC [SRC]... DEST

In altre parole, comando + opzioni + cartella di origine + destinazione.

Successivamente, con alcuni esempi, spiegherò l'uso di questo comando.

Esempi di come usare il comando rsync

1.- Copia file o directory in locale

Per sincronizzare cartelle o file utilizzando rsync in locale, esegui semplicemente il comando seguente:

:~$ rsync -avzh [file] [destination]

Ad esempio, se desideri eseguire il backup di una cartella denominata Files in un'altra chiamata backups , sarebbe così:

:~$ rsync -avzh /home/user/Files/ /home/user/backups/

In questo caso, l'intero contenuto dei Files la cartella verrà copiata nel Backup cartella. Anche se la cartella non esiste, rsync la creerà.

Fai attenzione con la / alla fine della cartella di origine, se esegui questo comando:

:~$ rsync -avzh /home/user/Files /home/user/backups/

Il risultato è una cartella chiamata Files verrà creato all'interno del Backup cartella e il contenuto sarà lì. Diciamo che la struttura della directory a destinazione sarà /home/user/backups/Files/

Ora, le opzioni che utilizzo per questo comando aiutano molto a rendere il processo ottimale.

un :mantiene l'utente, il gruppo, le autorizzazioni, la data e l'ora, nonché i collegamenti simbolici.
v :mostra il risultato dell'esecuzione del comando.
z :questa opzione comprime la cartella o il file prima di eseguire la sincronizzazione o la copia. Utile in file e cartelle molto grandi.
h :utilizzato per rendere le unità più leggibili.

In questo modo è abbastanza semplice eseguire un backup di una cartella in locale.

2.- Sincronizzazione remota utilizzando il comando Linux rsync

In questa sezione, effettueremo la sincronizzazione con un computer remoto. Si consiglia di farlo utilizzando SSH in modo che i nostri file vengano trasferiti in modo sicuro.

Per questo comando, devi aggiungere l'opzione e che abilita l'uso di una shell esterna che in questo caso è SSH.

:~$ rsync -avhze ssh [folder-or-file] [user]@[host]:[destination]

Come possiamo vedere è abbastanza semplice, in questo caso sincronizzerò i Files cartella in un host con indirizzo IP 192.168.1.23 nei Documents cartella.

:~$ rsync -avhze ssh /home/user/Files [email protected]:/home/user1/Documents

Ed è così semplice da fare. Ma cosa succede se SSH non è in esecuzione sulla porta 22? Bene, possiamo specificare una porta specifica come segue:

:~$ rsync -avhze "ssh -p [port]" /home/user/Files [email protected]:/home/user1/Documents

3.- Elimina i file nella cartella sorgente

In questo caso, il processo è più simile a una mossa che a una copia. Tuttavia, è anche possibile farlo. Per farlo, aggiungi il --remove-source-files opzione

:~$ rsync -avzh --remove-source-files /home/user/Files /home/user/backups/

Funziona anche da remoto:

:~$ rsync --remove-source-files -avhze ssh /home/user/Files [email protected]:/home/user1/Documents

Fai attenzione con questa opzione perché eliminerai tutto ciò che è nella cartella di origine.

4.- Includi o escludi file specifici

Il comando Linux rsync consente inoltre di escludere o includere file specifici durante la sincronizzazione. Questo viene fatto usando il --include e --exclude opzioni

Un esempio molto utile è sincronizzare solo i file con un'estensione, ad esempio JPG. Questo può essere fatto nel modo seguente:

:~$ rsync -ahvz --include "*.html" --exclude "*" /home/user/Files /home/user/backups/

Inoltre, queste opzioni possono essere utilizzate in una sincronizzazione remota.

5.- Testare il comando rsync prima della sincronizzazione

Con rsync, puoi eseguire operazioni piuttosto delicate sui server. Quindi è una buona idea testarlo prima di apportare modifiche. Qualcosa come un'anteprima.

Per questo, c'è il --dry-run opzione:

:~$ rsync -avzh --dry-run --remove-source-files /home/user/Files /home/user/backups/

In questo modo saprai esattamente cosa farà il comando prima di apportare modifiche, prevenendo errori.

Bonus:alcune applicazioni grafiche per rsync

rsync è un comando con molte opzioni. E grazie a questo, altri sviluppatori hanno creato programmi in grado di gestirlo da un'interfaccia grafica.

Questi programmi, aiutano non solo il principiante ma anche l'utente più esperto che con pochi clic vuole utilizzare rsync.

Il primo è LuckyBackup che è un'applicazione meravigliosa. È abbastanza completo e ha molte opzioni.

Per scaricarlo, puoi visitare questo link e scegliere il pacchetto giusto.

La seconda opzione è Grsync che fornisce da un'interfaccia GTK una facilità d'uso abbastanza completa nell'uso di rsync. Forse non è completo come Luckybackup ma è molto completo e difficilmente perderai nessuna opzione.

Per installarlo, usa semplicemente il gestore di pacchetti della tua distribuzione. Ad esempio, in Debian, Ubuntu e derivati:

:~$ sudo apt install grsync

Con questi due strumenti, puoi sfruttare il comando rsync e saperne di più.

Conclusione

Il comando Linux rsync viene utilizzato per copiare i file in modo avanzato. E anche, questo comando è la base per altre applicazioni grafiche per facilitare il compito di fare backup.

Questo comando è molto potente e veloce ed è per questo che è diventato uno strumento che ogni amministratore di sistema deve conoscere. In ogni caso, in questo post, questi esempi aiutano a conoscere, almeno in maniera basilare, come funziona rsync.


Debian
  1. Come usare il comando Linux grep

  2. Come usare il comando cronologia in Linux

  3. Come utilizzare il comando id in Linux

  4. Come usare il comando Rsync in Linux?

  5. Come utilizzare il comando "schermo" in Linux

Come utilizzare il comando Linux Top

Come utilizzare il comando fd sul sistema Linux

Come utilizzare il comando wget in Linux?

Come usare il comando xargs in Linux?

Come utilizzare il comando RPM in Linux

Come utilizzare il comando which in Linux