Android

Πώς να χρησιμοποιήσετε το rsync για τοπική και απομακρυσμένη μεταφορά δεδομένων και συγχρονισμό

Ιδιότητες, εφαρμογές και τρόπος χρήσης του SikaCem ExtraBond-100

Ιδιότητες, εφαρμογές και τρόπος χρήσης του SikaCem ExtraBond-100

Πίνακας περιεχομένων:

Anonim

Το Rsync είναι ένα γρήγορο και ευέλικτο βοηθητικό πρόγραμμα γραμμής εντολών που συγχρονίζει αρχεία και φακέλους μεταξύ δύο τοποθεσιών μέσω ενός απομακρυσμένου κελύφους ή από / σε απομακρυσμένο δαίμονα Rsync. Παρέχει γρήγορη αυξητική μεταφορά αρχείων μεταφέροντας μόνο τις διαφορές μεταξύ της πηγής και του προορισμού.

Το Rsync μπορεί να χρησιμοποιηθεί για την αντιγραφή δεδομένων, την αύξηση των αντιγράφων ασφαλείας, την αντιγραφή αρχείων μεταξύ συστημάτων και την αντικατάσταση των εντολών scp , sftp και cp για καθημερινή χρήση.

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

Εγκατάσταση του Rsync

Το βοηθητικό πρόγραμμα rsync είναι προεγκατεστημένο στις περισσότερες διανομές Linux και macOS. Μπορείτε να ελέγξετε αν είναι εγκατεστημένο στο σύστημά σας πληκτρολογώντας:

rsync --version

rsync version 3.1.2 protocol version 31

Εγκαταστήστε το Rsync σε Ubuntu και Debian

sudo apt install rsync

Εγκαταστήστε το Rsync σε CentOS και Fedora

sudo yum install rsync

Σύνταξη εντολών Rsync

Πριν πάτε στον τρόπο χρήσης της εντολής rsync , ξεκινήστε αναθεωρώντας τη βασική σύνταξη.

Οι εκφράσεις του βοηθητικού προγράμματος rsync έχουν την ακόλουθη μορφή:

Local to Local: rsync…… DEST Local to Remote: rsync…… HOST:DEST Remote to Local: rsync… HOST:SRC…

  • OPTION - Οι επιλογές rsync. SRC - Κατάλογος πηγαίου κώδικα. DEST - Κατάλογος προορισμών. USER - Απομακρυσμένο όνομα χρήστη. HOST - Απομακρυσμένο όνομα κεντρικού υπολογιστή ή διεύθυνση IP.

rsync παρέχει μια σειρά επιλογών που ελέγχουν κάθε πτυχή της συμπεριφοράς του. Οι πιο ευρέως χρησιμοποιούμενες επιλογές είναι:

  • -a , --archive , λειτουργία αρχειοθέτησης, ισοδύναμη με την -rlptgoD . Αυτή η επιλογή λέει στο rsync να συγχρονίζει καταλόγους αναδρομικά, να μεταφέρει ειδικές συσκευές και να μπλοκάρει, να διατηρεί συμβολικούς δεσμούς, χρόνους τροποποίησης, ομάδα, ιδιοκτησία και δικαιώματα. -z , --compress . Αυτή η επιλογή θα αναγκάσει το rsync να συμπιέσει τα δεδομένα καθώς αυτά αποστέλλονται στο μηχάνημα προορισμού. Χρησιμοποιήστε αυτήν την επιλογή μόνο εάν η σύνδεση με το απομακρυσμένο μηχάνημα είναι αργή. -P , ισοδύναμη με - --partial --progress . Όταν χρησιμοποιείται αυτή η επιλογή, το rsync θα εμφανίσει μια γραμμή προόδου κατά τη διάρκεια της μεταφοράς και θα διατηρήσει τα μερικώς μεταφερθέντα αρχεία. Είναι χρήσιμο όταν μεταφέρετε μεγάλα αρχεία σε αργές ή ασταθείς συνδέσεις δικτύου. --delete . Όταν χρησιμοποιείτε αυτήν την επιλογή, το rsync θα διαγράψει τα εξωτερικά αρχεία από τη θέση προορισμού. Είναι χρήσιμο για κατοπτρισμό. -q , - --quiet . Χρησιμοποιήστε αυτήν την επιλογή εάν θέλετε να καταργήσετε μηνύματα μη σφάλματος. -e . Αυτή η επιλογή σας επιτρέπει να επιλέξετε ένα διαφορετικό απομακρυσμένο κέλυφος. Από προεπιλογή, το rsync έχει ρυθμιστεί ώστε να χρησιμοποιεί ssh.

Βασική χρήση Rsync

Για να αντιγράψετε ένα αρχείο από μια σε άλλη τοπική τοποθεσία, θα εκτελέσετε την ακόλουθη εντολή:

rsync -a /opt/filename.zip /tmp/

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

Η παράλειψη του ονόματος αρχείου από τη θέση προορισμού αντιγράφει το αρχείο με το τρέχον όνομα. Αν θέλετε να αποθηκεύσετε το αρχείο με διαφορετικό όνομα, καθορίστε το νέο όνομα στο τμήμα προορισμού:

rsync -a /opt/filename.zip /tmp/newfilename.zip

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

rsync -a /var/www/domain.com/public_html/ /var/www/domain.com/public_html_backup/

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

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

Πώς να χρησιμοποιήσετε το Rsync για συγχρονισμό δεδομένων από / σε απομακρυσμένο μηχάνημα

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

Στο ακόλουθο παράδειγμα, μεταφέρουμε έναν κατάλογο από ένα τοπικό σε ένα απομακρυσμένο μηχάνημα:

rsync -a /opt/media/ remote_user@remote_host_or_ip:/opt/media/ Εάν δεν έχετε ρυθμίσει τη σύνδεση SSH χωρίς κωδικό πρόσβασης στο απομακρυσμένο μηχάνημα, θα σας ζητηθεί να καταχωρίσετε τον κωδικό πρόσβασης χρήστη.

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

rsync -a remote_user@remote_host_or_ip:/opt/media/ /opt/media/

Αν το SSH στον απομακρυσμένο κεντρικό υπολογιστή ακούει σε μια θύρα διαφορετική από την προεπιλεγμένη 22 τότε μπορείτε να καθορίσετε τη θύρα χρησιμοποιώντας την επιλογή -e :

rsync -a -e "ssh -p 2322" /opt/media/ remote_user@remote_host_or_ip:/opt/media/

Όταν μεταφέρετε μεγάλα ποσά δεδομένων, συνιστάται η εκτέλεση της εντολής rsync σε μια οθόνη ή η επιλογή -P :

rsync -a -P remote_user@remote_host_or_ip:/opt/media/ /opt/media/

Εξαίρεση αρχείων και καταλόγων

Όταν εξαιρείτε τα αρχεία ή τους καταλόγους πρέπει να χρησιμοποιήσετε τις σχετικές διαδρομές τους στη θέση προέλευσης.

Υπάρχουν δύο επιλογές για την εξαίρεση αρχείων και καταλόγων. Η πρώτη επιλογή είναι να χρησιμοποιήσετε το όρισμα --exclude και να καθορίσετε τα αρχεία και τους καταλόγους που θέλετε να εξαιρέσετε στη γραμμή εντολών.

Στο παρακάτω παράδειγμα, αποκλείουμε τους node_modules και tmp που βρίσκονται μέσα στο src_directory :

rsync -a --exclude=node_modules --exclude=tmp /src_directory/ /dst_directory/

Η δεύτερη επιλογή είναι να χρησιμοποιήσετε το όρισμα --exclude-from και να καθορίσετε τα αρχεία και τους καταλόγους που θέλετε να εξαιρέσετε σε ένα αρχείο.

rsync -a --exclude-from='/exclude-file.txt' /src_directory/ /dst_directory/ /exclude-file.txt

node_modules tmp

συμπέρασμα

Σε αυτό το σεμινάριο μάθατε πώς να χρησιμοποιείτε το Rsync για την αντιγραφή και συγχρονισμό αρχείων και καταλόγων. Υπάρχουν πολλά περισσότερα για να μάθετε για το Rsync στη σελίδα του εγχειριδίου χρήστη Rsync.

Μη διστάσετε να αφήσετε ένα σχόλιο εάν έχετε οποιεσδήποτε ερωτήσεις.

rsync τερματικό