Introduzione
Rsync è uno strumento open source che permette di effettuare il backup dei dati sincronizzando i file e le cartelle tra la directory sorgente e la directory di destinazione, sia in locale che in remoto. È un comando a riga di comando che consente di trasferire file e directory in destinazioni locali e remote e viene utilizzato per la replica dei dati, il backup o la migrazione dei dati su altri server. Una delle principali caratteristiche di Rsync è la sua efficienza e velocità, in quanto copia solo le modifiche apportate alla sorgente e offre opzioni di personalizzazione. Inoltre, è possibile simulare un comando Rsync per assicurarsi di non eseguire operazioni errate.
Copiare i file mancanti con Rsync
Per copiare solo i file mancanti utilizzando rsync, puoi utilizzare l'opzione --ignore-existing
. Questo dice a rsync di ignorare i file già esistenti nella posizione di destinazione e di copiare solo i file mancanti. Ad esempio, per copiare tutti i file dalla directory "source" alla directory "destination" , utilizzando l'opzione --ignore-existing
, eseguire il seguente comando:
rsync --ignore-existing -av source/ destination/
L'opzione -a
dice a rsync di preservare gli attributi dei file e l' -v
opzione verbose mode che ti mostrerà l'avanzamento del trasferimento e i file che vengono copiati.
Copiare i file modificati con Rsync
È anche possibile copiare solo i file nuovi o modificati ed escludere i file più vecchi che già esistono nella destinazione. Per questo puoi usare le opzioni opzione -u
o --update
insieme a -r
o --recursive
per trasferire la directory in modo ricorsivo.
rsync -ur source/ destination/
Copiare i file modificati negli ultimi N giorni
Puoi anche specificare che rsync deve copiare solo i file che sono stati modificati negli ultimi N giorni. Ad esempio, per copiare solo i file che sono stati modificati negli ultimi 7 giorni , utilizzare l'opzione --max-age
insieme al numero di giorni, in questo modo:
rsync --ignore-existing --max-age=7 -av source/ destination/
Copia i file per dimensione con Rsync
È anche possibile specificare di copiare solo i file più grandi o più piccoli di una certa dimensione usando l'opzione --size-range
, che accetta l'argomento di uno +SIZE
o -SIZE
. Ad esempio, se desideri copiare solo file di dimensioni superiori a 100 MB , dovresti utilizzare l'opzione --size-range
in questo modo:
rsync --ignore-existing --size-range='+100M' -av source/ destination/
Ci sono anche molte altre opzioni disponibili con rsync che possono essere utilizzate per perfezionare ulteriormente il processo di trasferimento dei file. Ad esempio, è possibile utilizzare l'opzione --exclude
per escludere determinati file o directory dal trasferimento o l'opzione --dry-run
per vedere quali file verrebbero copiati senza eseguire effettivamente il trasferimento.
Conclusione
In conclusione, il comando rsync è un potente strumento per copiare file e directory e può essere utilizzato per copiare solo i file mancanti o modificati nella posizione di destinazione. Utilizzando le varie opzioni disponibili con rsync, puoi perfezionare ulteriormente il processo di trasferimento dei file in base alle tue esigenze specifiche.