Rsync è un comando importante in Linux e viene utilizzato per sincronizzare o copiare i file e le directory all'interno del server locale e remoto. È uno strumento per la copia di file veloce e straordinariamente versatile. Una delle caratteristiche importanti di questo comando è "Delta Transfer Algorithm (DTA)" . Ciò significa che copierà solo le modifiche dall'origine alla destinazione, invece di copiare l'intero file o le directory. In questo modo, riduce anche la quantità di dati inviati sulla rete. Di routine, le persone utilizzano questo comando per i backup giornalieri, il ripristino e il mirroring.
In questo articolo discuteremo dell'uso di RSYNC comandi in vari modi.
- Copia/sincronizza file in locale
Supponiamo di voler copiare un file “abc.txt” da una posizione alla cartella etc.#rsync -zvh abc.txt /etc
- Copia/sincronizza directory in locale
Supponiamo di voler copiare o sincronizzare una directory "testdir" nella cartella "etc"#rsync -zavh testdir /etc
- Copia file e directory ricorsivamente in locale
Supponiamo di avere più file e directory all'interno della home directory dell'utente A, utilizzare il comando seguente per copiare file e directory in modo ricorsivo, utilizzare l'opzione -a o -r per copiare file e directory in modo ricorsivo.#rsync -zrvh file2.txt testdir11 /etc
Puoi controllare quei file e directory usando il "comando ls". - Copiare o sincronizzare file e directory dal sistema locale a quello remoto Supponiamo di voler copiare il file “/etc/abc.txt” dal computer locale al computer remoto
#rsync -zarvh /etc/abc.txt [email protected]***.***.72
- Copia o sincronizza file e directory dalla macchina remota al sistema locale
Supponiamo di voler copiare file e directory dalla macchina remota al nostro sistema locale, nell'esempio seguente sto copiando il file remoto "newfile.txt" nella mia macchina locale nella cartella /etc#rsync -zarvh [email protected]***.***.72 /etc
- Visualizza l'avanzamento della sincronizzazione nell'output del comando rsync
Se vuoi vedere l'avanzamento della sincronizzazione o della copia nel comando rsync, usa "–progress",#rsync -avh --progress [email protected]_address:/opt/rpms_db /tmp
- Elimina i file a destinazione se non sono presenti nell'origine
Se hai già sincronizzato i file dall'origine alla destinazione e da una fonte hai eliminato i file, puoi forzare il comando rsync per eliminare i file sulla destinazione utilizzando l'opzione –delete, l'esempio è mostrato di seguito#rsync -avz --delete /opt/rpms_db [email protected]_address:/tmp/rpms_db
- Imposta un limite alla dimensione del trasferimento dei file
Se non desideri trasferire o copiare file di grandi dimensioni utilizzando rsync, utilizza l'opzione '–max-size={specify-size-here}', nel caso in cui non desideriamo trasferire i file che sono più di 1024K, puoi farlo come per il comando seguente Nota:usa il simbolo M per mb e G per GB.#rsync -avz --max-size='500K' /opt/rpms_db [email protected]_address:/tmp