Ανησυχείτε ποτέ μήπως χάσετε τα δεδομένα σας ή έχετε κουραστεί να εκτελείτε μη αυτόματα αντίγραφα ασφαλείας καθημερινά ή εβδομαδιαία; Χρησιμοποιήστε το rsync
εντολή και να συγχρονίσετε αυτόματα τα τοπικά αρχεία σας σε έναν απομακρυσμένο διακομιστή όσο συχνά επιθυμείτε χωρίς χειροκίνητη παρέμβαση. Λάβετε υπόψη ότι αυτός ο οδηγός απαιτεί πρόσβαση σε έναν απομακρυσμένο διακομιστή Linux (π.χ. AWS), και είναι γραμμένο κάτω από το Ubuntu 20.04, αν και οποιαδήποτε διανομή Linux θα πρέπει να λειτουργεί καλά.
Εγκαταστήστε το rsync
Πριν από οτιδήποτε, ελέγξτε αν ή όχι rsync
είναι εγκατεστημένο. Τόσο στον τοπικό υπολογιστή όσο και στον διακομιστή web, εκτελέστε αυτήν την εντολή:
rsync -- έκδοση
Εάν λάβετε ως αντάλλαγμα την τρέχουσα έκδοση rsync, τότε είστε έτοιμοι για την επόμενη ενότητα. Διαφορετικά, εάν λάβετε α η εντολή δεν βρέθηκε σφάλμα, μπορείτε να εγκαταστήσετε rsync
με αυτή την εντολή:
sudo apt-get -y install rsync
Δημιουργία κλειδιού SSH
Θα χρησιμοποιήσουμε α Κλειδί SSH για τον έλεγχο ταυτότητας της σύνδεσης μεταξύ του τοπικού μας υπολογιστή και του απομακρυσμένου διακομιστή. Για να δημιουργήσετε ένα νέο κλειδί SSH στον τοπικό σας υπολογιστή εντός του τερματικού, εκτελέστε την εντολή:
Χρειάζεστε πρόσβαση στον υπολογιστή ή τον διακομιστή σας Linux εξ αποστάσεως; Δείτε πώς μπορείτε να ρυθμίσετε και να ρυθμίσετε το SSH σε Linux, Windows και κινητά.
ssh-keygen -t rsa -b 4096 -f ~/.ssh/rsync.key
Όταν σας ζητηθεί κωδικός πρόσβασης, αφήστε τον κενό και πατήστε το πλήκτρο Enter δύο φορές. Αυτό θα δημιουργήσει δύο νέα αρχεία στο δικό σας ~/.ssh/
κατάλογος με όνομα rsync.key
που είναι το ιδιωτικό κλειδί και rsync.key.pub
, το δημόσιο κλειδί.
Ρύθμιση απομακρυσμένου διακομιστή
Αν και δεν απαιτείται, για αυτόν τον οδηγό θα δημιουργήσουμε ένα νέος χρήστης στον απομακρυσμένο διακομιστή για συνδέσεις rsync και για αποθήκευση όλων των αρχείων αντιγράφων ασφαλείας. Συνδεθείτε στον απομακρυσμένο διακομιστή μέσω SSH και εκτελέστε αυτήν την εντολή:
sudo useradd -m rsync
Το παραπάνω παράδειγμα χρησιμοποιεί το όνομα χρήστη rsync, αλλά μπορείτε να το αλλάξετε σε ότι επιθυμείτε. ο -Μ
Η επιλογή απλώς λέει στο Linux να δημιουργήσει έναν αρχικό κατάλογο για τον νέο μας χρήστη.
Για να επιτρέψετε τον έλεγχο ταυτότητας του τοπικού σας υπολογιστή, το δημόσιο κλειδί SSH που δημιουργήθηκε στην προηγούμενη ενότητα πρέπει να αντιγραφεί στον απομακρυσμένο διακομιστή. Ανοιξε το /~.ssh/rsync.key.pub
αρχείο σε α επεξεργαστής κειμένου και θα δείτε μια μεγάλη γραμμή που μοιάζει κάπως.
ssh-rsa user@host
Αυτή η μεγάλη γραμμή είναι το δημόσιο κλειδί SSH. Αντιγράψτε το στο πρόχειρό σας και εκτελέστε αυτές τις εντολές στον απομακρυσμένο διακομιστή σας:
sudo su rsync
mkdir -m 0700 $HOME/.ssh
echo "ssh-rsa AAAAB... user@host" > $HOME/.ssh/authorized_keys
chmod 0644 $HOME/.ssh/authorized_keys
Στη δεύτερη τελευταία εντολή, αντικαταστήστε το κείμενο μεταξύ των εισαγωγικών με αυτή τη μεγάλη δημόσια γραμμή κλειδιού SSH. Αυτό ήταν όλο, ο τοπικός υπολογιστής σας θα μπορεί πλέον να πραγματοποιήσει έλεγχο ταυτότητας με τον απομακρυσμένο διακομιστή σας.
Διαμόρφωση αρχείου διαμόρφωσης ssh
Για λόγους απλότητας, προσθέστε μια καταχώρηση στο ~/.ssh/config
αρχείο στον τοπικό σας υπολογιστή για να συνδεθείτε εύκολα στον απομακρυσμένο διακομιστή. Ανοίξτε το αρχείο στον τοπικό σας υπολογιστή με την εντολή.
nano $HOME/.ssh/config
Μέσα στο αρχείο προσθέστε μια καταχώρηση για τον απομακρυσμένο διακομιστή όπως:
host backup_server
όνομα κεντρικού υπολογιστή 192.168.0.24
rsync χρήστη
IdentityFile ~/.ssh/rsync
Αλλάξτε το όνομα κεντρικού υπολογιστή στη διεύθυνση IP του απομακρυσμένου διακομιστή σας και εάν χρησιμοποιήσατε όνομα χρήστη διαφορετικό από το "rsync", αλλάξτε και αυτό. Μπορείτε να χρησιμοποιήσετε οτιδήποτε θέλετε για τον κεντρικό υπολογιστή, αλλά για αυτό το παράδειγμα χρησιμοποιήθηκε ο "backup_server". Αποθηκεύστε και κλείστε το αρχείο πατώντας Ctrl+X ακολουθούμενο από τα πλήκτρα "Y" και Enter.
Δοκιμάστε τη σύνδεσή σας SSH στον απομακρυσμένο διακομιστή με την εντολή.
ssh backup_server
Υποθέτοντας ότι όλα έχουν ρυθμιστεί σωστά, θα πρέπει τώρα να συνδεθείτε στον απομακρυσμένο διακομιστή σας μέσω SSH. Κλείστε τη σύνδεση με την εντολή.
έξοδος
Συγχρονίστε τα αρχεία σας
Τώρα δοκιμάστε το rsync
λειτουργικότητα και, για παράδειγμα, για να συγχρονίσετε τον κατάλογο των Εγγράφων σας στον τοπικό υπολογιστή σας, εκτελέστε την εντολή:
rsync -avz --πρόοδος ~/Documents/ backup_server:~/Documents
Η πρώτη εμφάνιση του ~/Έγγραφα/
καθορίζει το τοπικό αρχείο ή κατάλογο προς συγχρονισμό, backup_server
αντιστοιχεί με την καταχώρηση που προστέθηκε στο ~/.ssh/config
αρχείο και το τέλος :~/Έγγραφα
απλά καθορίζει να ανεβάσετε τα πάντα στον κατάλογο /Documents του απομακρυσμένου διακομιστή σε σχέση με τον αρχικό κατάλογο.
Συνδεθείτε στον απομακρυσμένο διακομιστή και θα δείτε έναν νέο κατάλογο Εγγράφων που είναι συγχρονισμένος με αυτόν του τοπικού σας υπολογιστή. Κάθε φορά που εκτελείτε την παραπάνω εντολή, θα μεταφορτώνονται μόνο αρχεία που έχουν τροποποιηθεί από την τελευταία φορά, ώστε να μην ανεβάζετε συνεχώς ολόκληρο το περιεχόμενο του καταλόγου.
Αυτοματοποίηση μέσω Crontab
Τώρα που όλα έχουν δοκιμαστεί και λειτουργούν σωστά, μπορούμε εύκολα να αυτοματοποιήσουμε ολόκληρη τη διαδικασία προσθέτοντας μια εργασία crontab στον τοπικό μας υπολογιστή. Για να συγχρονίσετε αυτόματα τον τοπικό σας φάκελο με τον απομακρυσμένο διακομιστή κάθε 15 λεπτά, εντός τερματικού εκτελέστε την εντολή.
(crontab -l; echo "*/15 * * * * rsync -avz --πρόοδος ~/Documents/ backup_server:~/Documents > /dev/null 2>&1";) | crontab
Μπορεί να λάβετε ένα μήνυμα "no crontab for user" και μπορείτε απλώς να το αγνοήσετε. Αλλαξε το Εγγραφα
κατάλογο σε ό, τι θέλετε να δημιουργήσετε αντίγραφο ασφαλείας, αλλά φροντίστε να αφήσετε μια τελευταία κάθετο για τους καταλόγους διαφορετικά δεν θα δημιουργήσουν σωστά αντίγραφα ασφαλείας.
Ελέγξτε για να βεβαιωθείτε ότι η εργασία crontab προστέθηκε με επιτυχία με την εντολή.
crontab -l
Αν δείτε την εργασία crontab που μόλις προστέθηκε, τότε όλα είναι στη θέση τους. Περιμένετε 15 λεπτά, ελέγξτε τον απομακρυσμένο διακομιστή σας και όλα τα απαραίτητα αρχεία θα πρέπει να είναι εκεί. Από τώρα, όλες οι αλλαγές που γίνονται στα αρχεία σας θα μεταφορτώνονται αυτόματα στον απομακρυσμένο διακομιστή κάθε 15 λεπτά.
Λήψη από τον απομακρυσμένο διακομιστή
Μπορείτε επίσης να χρησιμοποιήσετε rsync
για λήψη αρχείων από τον απομακρυσμένο διακομιστή και συγχρονισμό τους στον τοπικό σας υπολογιστή. Χρησιμοποιώντας το παραπάνω παράδειγμα καταλόγου /Documents, μέσα στο τερματικό εκτελέστε την εντολή:
rsync -chavzP backup_server:~/Documents/ ~/Documents
ο ~./Έγγραφα
Ο κατάλογος στον τοπικό υπολογιστή σας θα πρέπει τώρα να είναι μια κατοπτρική εικόνα του απομακρυσμένου διακομιστή.
Συμπερίληψη και εξαίρεση μοτίβων
Εάν χρειαστεί ποτέ να συγχρονίσετε μόνο αρχεία που ταιριάζουν με ένα συγκεκριμένο μοτίβο, όπως τέλος με .html
μπορείτε να χρησιμοποιήσετε το --περιλαμβάνω
πρότυπο. Μέσα στο τερματικό εκτελέστε την εντολή.
rsync -avz --include "*.html" --progress ~/mysite/ backup_server:~/public_html
Ελέγξτε τον απομακρυσμένο διακομιστή και θα δείτε μόνο αρχεία με επέκταση .html από τον τοπικό κατάλογο /mysite/ έχουν μεταφορτωθεί στον απομακρυσμένο κατάλογο /public_html/. Ομοίως, μπορείτε επίσης να συγχρονίσετε τα πάντα εκτός από ορισμένα αρχεία με το --αποκλείω
επιλογή. Για παράδειγμα, η ακόλουθη εντολή θα συγχρονίσει όλα τα αρχεία εκτός από αυτά με a .κείμενο
επέκταση.
rsync -avz --exclude "*.txt" --progress ~/mysite/ backup_server:~/public_html
Συγχρονισμός δύο τοπικών καταλόγων
Εάν χρειαστεί, μπορείτε επίσης να συγχρονίσετε δύο τοπικούς καταλόγους με την εντολή.
rsync -zvr ~/πηγή/κατάλογος ~/προορισμός/κατάλογος
Αυτή η εντολή λειτουργεί ακριβώς όπως κατά τον συγχρονισμό σε έναν απομακρυσμένο διακομιστή, με τη μόνη διαφορά ότι είναι δύο τοπικοί κατάλογοι.
Επαναπαύσου
Τώρα μπορείτε να αναπνεύσετε με ανακούφιση γνωρίζοντας ότι οι πιθανότητες απώλειας δεδομένων σας είναι πλέον σημαντικά χαμηλότερες. Σε αυτό το άρθρο μάθατε τι rsync
είναι, πώς να δημιουργήσετε και να εγκαταστήσετε ένα κλειδί SSH, να ορίσετε έναν διακομιστή εντός του ~./.ssh/config
αρχείο, συγχρονίστε έναν τοπικό και απομακρυσμένο κατάλογο και αυτοματοποιήστε ολόκληρη τη διαδικασία μέσω του crontab. Στο εξής, όλα τα απαραίτητα αρχεία θα συγχρονίζονται πάντα με τον απομακρυσμένο διακομιστή σας με καθυστέρηση μόνο 15 λεπτών.
Θέλετε να κλωνοποιήσετε τη μονάδα σκληρού δίσκου ή το διαμέρισμα Linux; Χρησιμοποιήστε ένα από αυτά τα εργαλεία κλωνοποίησης μονάδων δίσκου για να κλωνοποιήσετε το δίσκο Linux σας.
- Linux
- Αντίγραφο ασφαλείας δεδομένων
- Linux
- Cloud Backup
- Οικιακό δίκτυο
Εγγραφείτε στο Newsletter μας
Εγγραφείτε στο ενημερωτικό μας δελτίο για συμβουλές τεχνολογίας, κριτικές, δωρεάν ebook και αποκλειστικές προσφορές!
Ένα ακόμη βήμα…!
Επιβεβαιώστε τη διεύθυνση email σας στο email που μόλις σας στείλαμε.