Com utilitzar Rsync per sincronitzar fitxers nous o canviats/modificats a Linux


Com a administrador del sistema o usuari potent de Linux, és possible que hàgiu trobat o fins i tot en diverses ocasions hàgiu utilitzat la versàtil eina Linux Rsync, que permet als usuaris copiar o sincronitzar fitxers de manera ràpida de manera local i remota. També és una gran eina que s'utilitza popularment per a operacions de còpia de seguretat i duplicació.

Algunes de les seves característiques i avantatges eminents inclouen; és excepcionalment versàtil perquè pot copiar localment, a/des d'un intèrpret d'ordres remot o rsync remot, també és molt flexible, permetent als usuaris especificar qualsevol nombre de fitxers per copiar.

A més, permet copiar enllaços, dispositius, propietari de fitxers o directoris, grups i permisos. També admet l'ús sense privilegis de root juntament amb molts més.

Un diferencial imperatiu de rsync en comparació amb altres ordres de copia de fitxers a Linux és l'ús del protocol d'actualització remota, per transferir només la diferència entre fitxers o contingut del directori.

Per tant, en aquest article, examinarem com rsync ens pot ajudar a sincronitzar només fitxers nous o modificats o contingut de directoris mentre fem còpies de seguretat i més enllà a Linux.

Per començar, heu de recordar que la forma convencional i més senzilla d'utilitzar rsync és la següent:

# rsync options source destination 

Dit això, anem a submergir-nos en alguns exemples per descobrir com funciona realment el concepte anterior.

Sincronització de fitxers localment mitjançant Rsync

Utilitzant l'ordre següent, poder copiar fitxers del meu directori Documents al directori /tmp/documents localment:

$ rsync -av Documents/* /tmp/documents

A l'ordre anterior, l'opció:

  1. -a: significa mode d'arxiu
  2. -v: significa detallat, que mostra detalls de les operacions en curs

Per defecte, rsync només copia els fitxers nous o modificats d'una font a una destinació, quan afegeixo un fitxer nou al meu directori de documents, això és el que passa després d'executar la mateixa ordre una segona vegada:

$ rsync -av Documents/* /tmp/documents

Com podeu observar i observar des de la sortida de l'ordre, només es copia el fitxer nou al directori de destinació.

L'opció --update o -u permet que rsync omet els fitxers que encara són nous al directori de destinació, i una opció important, --dry-run o -n ens permet executar una operació de prova sense fer cap canvi. Ens mostra quins fitxers s'han de copiar.

$ rsync -aunv Documents/* /tmp/documents

Després d'executar una prova d'execució, podem eliminar el -n i realitzar una operació real:

$ rsync -auv Documents/* /tmp/documents

Sincronització de fitxers de Linux local a remot

A l'exemple següent, estic copiant fitxers de la meva màquina local a un servidor remot amb l'adreça IP: 10.42.1.5. Per tal de sincronitzar només fitxers nous a la màquina local, que no existeixen a la màquina remota, podem incloure l'opció --ignore-existing:

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

Posteriorment, per sincronitzar només els fitxers actualitzats o modificats a la màquina remota que han canviat a la màquina local, podem realitzar una execució en sec abans de copiar els fitxers de la manera següent:

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

Per actualitzar els fitxers existents i evitar la creació de nous fitxers a la destinació, utilitzem l'opció --existing.

Podeu executar la pàgina man rsync per descobrir opcions addicionals útils per a un ús avançat, com he esmentat anteriorment, rsync és una eina Linux molt potent i versàtil, i molts administradors de sistemes i usuaris avançats de Linux només ho saben. que avantatjós és.

El més important és que també podeu compartir la vostra opinió sobre els exemples que hem tractat aquí o encara millor, oferir-nos consells valuosos per utilitzar aquesta eina de línia d'ordres vital a través de la secció de comentaris a continuació.