Ricerca nel sito web

Come utilizzare Rsync per sincronizzare file nuovi o modificati/modificati in Linux


In qualità di amministratore di sistema o utente esperto di Linux, probabilmente ti sei imbattuto o anche utilizzato in diverse occasioni il versatile strumento Linux Rsync, che consente agli utenti di copiare o sincronizzare rapidamente i file localmente e in remoto. È anche un ottimo strumento comunemente utilizzato per operazioni di backup e mirroring.

Alcune delle sue caratteristiche e vantaggi importanti includono; è eccezionalmente versatile in quanto può copiare localmente, da/verso una shell remota o un rsync remoto, è anche straordinariamente flessibile, consentendo agli utenti di specificare un numero qualsiasi di file da copiare.

Lettura consigliata: 10 esempi pratici di comando Rsync in Linux

Inoltre, consente la copia di collegamenti, dispositivi, proprietario di file o directory, gruppi e autorizzazioni. Supporta anche l'utilizzo senza privilegi di root insieme a molti altri.

Una differenza fondamentale di rsync rispetto ad altri comandi di copia di file in Linux è l'uso del protocollo di aggiornamento remoto, per trasferire solo la differenza tra file o contenuto di directory.

Pertanto, in questo articolo, esamineremo come rsync può aiutarci a sincronizzare solo file o contenuti di directory nuovi o modificati durante l'esecuzione dei backup e oltre in Linux.

Per cominciare, devi ricordare che la forma convenzionale e più semplice di utilizzo di rsync è la seguente:

rsync options source destination 

Detto questo, analizziamo alcuni esempi per scoprire come funziona effettivamente il concetto di cui sopra.

Sincronizzazione dei file localmente utilizzando Rsync

Utilizzando il comando seguente, potendo copiare file dalla mia directory Documents alla directory /tmp/documents localmente:

rsync -av Documents/* /tmp/documents

Nel comando sopra, l'opzione:

  1. -a – significa modalità archivio
  2. -v – significa dettagliato, mostrando i dettagli delle operazioni in corso

Per impostazione predefinita, rsync copia solo i file nuovi o modificati da un'origine alla destinazione, quando aggiungo un nuovo file nella mia directory Documents, questo è ciò che accade dopo aver eseguito lo stesso comando una seconda volta:

rsync -av Documents/* /tmp/documents

Come puoi osservare e notare dall'output del comando, nella directory di destinazione viene copiato solo il nuovo file.

Lettura consigliata: Come sincronizzare due server Web/siti Web Apache utilizzando Rsync

L'opzione --update o -u consente a rsync di saltare i file che sono ancora nuovi nella directory di destinazione e un'opzione importante, --dry-run o -n ci consentono di eseguire un'operazione di test senza apportare modifiche. Ci mostra quali file devono essere copiati.

rsync -aunv Documents/* /tmp/documents

Dopo aver eseguito un test, possiamo eliminare -n ed eseguire un'operazione reale:

rsync -auv Documents/* /tmp/documents

Sincronizzazione di file da Linux locale a remoto

Nell'esempio seguente, sto copiando file dal mio computer locale a un server remoto con l'indirizzo IP – 10.42.1.5. Per sincronizzare solo i nuovi file sul computer locale, che non esistono sul computer remoto, possiamo includere l'opzione --ignore-existing:

rsync -av --ignore-existing Documents/* [email :~/all/

Successivamente, per sincronizzare solo i file aggiornati o modificati sul computer remoto che sono cambiati sul computer locale, possiamo eseguire un'esecuzione di prova prima di copiare i file come di seguito:

rsync -av --dry-run --update Documents/* [email :~/all/
rsync -av --update Documents/* [email :~/all/

Per aggiornare i file esistenti e impedire la creazione di nuovi file nella destinazione, utilizziamo l'opzione --existing.

Puoi scorrere la pagina man rsync per scoprire ulteriori opzioni utili per un utilizzo avanzato. Come ho già detto in precedenza, rsync è uno strumento Linux molto potente e versatile e molti sistemi Gli amministratori e gli utenti esperti di Linux sanno quanto sia vantaggioso.

Ancora più importante, puoi anche condividere la tua opinione sugli esempi che abbiamo trattato qui o, meglio ancora, offrirci preziosi suggerimenti sull'utilizzo di questo fondamentale strumento da riga di comando attraverso la sezione commenti qui sotto.