Πώς να αντιγράψετε τους καταλόγους και τα αρχεία με την εντολή rsync στο Linux

Χρησιμοποιήστε την εντολή Linux rsync για να αντιγράψετε φακέλους / αρχεία από τη γραμμή εντολών

Το rsync είναι ένα πρόγραμμα μεταφοράς αρχείων για το Linux που σας επιτρέπει να αντιγράφετε καταλόγους και αρχεία με μια απλή εντολή , η οποία περιλαμβάνει επιπλέον επιλογές πέρα ​​από την παραδοσιακή λειτουργία αντιγραφής.

Ένα από τα χρήσιμα χαρακτηριστικά του rsync είναι ότι όταν το χρησιμοποιείτε, αντιγράφετε καταλόγους, μπορείτε να εξαιρέσετε τα αρχεία με συστηματικό τρόπο. Με αυτόν τον τρόπο, εάν χρησιμοποιείτε το rsync για να δημιουργήσετε αντίγραφα ασφαλείας αρχείων, μπορείτε να έχετε μόνο αντίγραφα ασφαλείας των αρχείων που πραγματικά θέλετε να αρχειοθετήσετε, αποφεύγοντας οτιδήποτε άλλο.

παραδείγματα rsync

Χρησιμοποιώντας σωστά την εντολή rsync, πρέπει να ακολουθήσετε τη σωστή σύνταξη :

rsync [OPTION] ... [SRC] ... [SRC] ... [SRC] ... [SRC] ... [ USER @] HOST :: DEST rsync [OPTION] ... [SRC] ... rsync: // [USER @] HOST [: PORT] / DEST rsync [ DEST] rsync [OPTION] ... [USER @] HOST :: SRC [DEST] rsync [OPTION] ... rsync:

Ο χώρος επιλογής που παρέχεται παραπάνω μπορεί να γεμίσει με πολλά πράγματα. Ανατρέξτε στην ενότητα ΣΥΝΟΨΗ ΕΠΙΛΟΓΩΝ στη σελίδα τεκμηρίωσης rsync για πλήρη λίστα.

Ακολουθούν μερικά παραδείγματα σχετικά με τον τρόπο χρήσης του rsync με ορισμένες από τις παρακάτω επιλογές:

Συμβουλή: Σε όλα αυτά τα παραδείγματα, το έντονο κείμενο δεν μπορεί να αλλάξει επειδή είναι μέρος της εντολής. Όπως μπορείτε να διαπιστώσετε, οι διαδρομές φακέλων και άλλες επιλογές είναι προσαρμοσμένες στα συγκεκριμένα παραδείγματα, επομένως θα είναι διαφορετικά όταν τα χρησιμοποιείτε.

rsync /home/jon/Desktop/data/*.jpg / home / jon / Επιφάνεια εργασίας / backupdata /

Σε αυτό το παραπάνω παράδειγμα, όλα τα αρχεία JPG από το φάκελο / data / αντιγράφονται στο / backupdata / φάκελο στον φάκελο Desktop του χρήστη Jon.

rsync -max-size = 2k / home / jon / Επιφάνεια εργασίας / δεδομένα / / σπίτι / jon / Επιφάνεια εργασίας / backupdata /

Αυτό το παράδειγμα του rsync είναι λίγο πιο περίπλοκο αφού έχει ρυθμιστεί να μην αντιγράφει αρχεία αν είναι μεγαλύτερα από 2.048 KB. Δηλαδή, να αντιγράφετε μόνο αρχεία μικρότερα από το αναφερόμενο μέγεθος. Μπορείτε να χρησιμοποιήσετε k, m ή g για να δείξετε τα kilobytes, τα megabyte και τα gigabytes στον πολλαπλασιαστή 1,024 ή kb , mb ή gb για να χρησιμοποιήσετε 1000.

rsync - min-size = 30mb / σπίτι / jon / επιφάνεια εργασίας / δεδομένα / / σπίτι / jon / επιφάνεια εργασίας / backupdata /

Το ίδιο μπορεί να γίνει για το -min-μέγεθος , όπως βλέπετε παραπάνω. Σε αυτό το παράδειγμα, το rsync θα αντιγράψει μόνο αρχεία που είναι 30 MB ή μεγαλύτερα.

rsync - min-size = 30mb - πρόοδος / αρχική / jon / επιφάνεια εργασίας / δεδομένα / / home / jon / επιφάνεια εργασίας / backupdata /

Όταν αντιγράφετε αρκετά μεγάλα αρχεία, όπως 30 MB και μεγαλύτερα, και ειδικά όταν υπάρχουν πολλά από αυτά, ίσως θέλετε να δείτε την πρόοδο της λειτουργίας αντιγραφής αντί να υποθέσετε ότι η εντολή έχει παγώσει. Σε αυτές τις περιπτώσεις, χρησιμοποιήστε την επιλογή - πρόοδος για να παρακολουθήσετε τη διαδικασία να φτάσει το 100%.

rsync - recursive / home / jon / Επιφάνεια εργασίας / data / home / jon / Desktop / data2

Η επιλογή --recursive παρέχει έναν εύκολο τρόπο για την αντιγραφή ολόκληρου του φακέλου σε διαφορετική τοποθεσία, όπως στο φάκελο / data2 / στο παράδειγμά μας.

rsync -r --exclude = "* .deb " / home / jon / Επιφάνεια εργασίας / data / home / jon / Desktop / backupdata

Μπορείτε επίσης να αντιγράψετε ένα ολόκληρο φάκελο, αλλά να εξαιρέσετε αρχεία συγκεκριμένης επέκτασης αρχείων , όπως αρχεία DEB σε αυτό το παραπάνω παράδειγμα. Αυτή τη φορά το σύνολο / δεδομένα / φάκελο αντιγράφεται στο / backupdata / όπως στο προηγούμενο παράδειγμα, αλλά όλα τα αρχεία DEB εξαιρούνται από το αντίγραφο.