Πώς να δημιουργήσετε αυτόματα αντίγραφα ασφαλείας αρχείων σε μέσα USB όταν είναι συνδεδεμένα


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

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

Για τους σκοπούς αυτού του άρθρου, χρειαζόμαστε ένα σύγχρονο σύστημα Linux με:

  1. systemd διαχειριστής συστημάτων και υπηρεσιών
  2. διαχειριστής συσκευής udev
  3. εργαλείο δημιουργίας αντιγράφων ασφαλείας συγχρονισμού

Πώς να ρυθμίσετε τους κανόνες Udev για αφαιρούμενα μέσα

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

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

Για τους σκοπούς της δοκιμής, θα χρησιμοποιήσουμε εξωτερικό σκληρό δίσκο 1 TB όπως φαίνεται.

$ lsusb

Από την έξοδο της παραπάνω εντολής, το αναγνωριστικό προμηθευτή της συσκευής μας είναι 125f, το οποίο θα καθορίσουμε στους κανόνες udev όπως εξηγείται παρακάτω.

Αρχικά, αφαιρέστε τα συνδεδεμένα μέσα από το σύστημα και δημιουργήστε ένα νέο αρχείο κανόνων udev που ονομάζεται 10.autobackup.rules στον κατάλογο /etc/udev/rules.d/.

Το 10 στο όνομα αρχείου καθορίζει τη σειρά εκτέλεσης των κανόνων. Η σειρά με την οποία αναλύονται οι κανόνες είναι σημαντική. θα πρέπει πάντα να δημιουργείτε προσαρμοσμένους κανόνες που θα αναλύονται πριν από τις προεπιλογές.

$ sudo vim /etc/udev/rules.d/10.autobackup.rules

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

SUBSYSTEM=="block", ACTION=="add", ATTRS{idVendor}=="125f" SYMLINK+="external%n", RUN+="/bin/autobackup.sh"

Ας εξηγήσουμε εν συντομία τον παραπάνω κανόνα:

  • \==\: είναι ένας τελεστής για σύγκριση για ισότητα.
  • \+=\: είναι ένας τελεστής για την προσθήκη της τιμής σε ένα κλειδί που περιέχει μια λίστα καταχωρήσεων.
  • SUBSYSTEM: αντιστοιχεί στο υποσύστημα της συσκευής συμβάντος.
  • ACTION: αντιστοιχεί στο όνομα της ενέργειας εκδήλωσης.
  • ATTRS{idVendor}: αντιστοιχίζει τις τιμές χαρακτηριστικών sysfs της συσκευής συμβάντος, που είναι το αναγνωριστικό προμηθευτή συσκευής.
  • RUN: καθορίζει ένα πρόγραμμα ή ένα σενάριο που θα εκτελεστεί ως μέρος του χειρισμού συμβάντων.

Αποθηκεύστε το αρχείο και κλείστε το.

Δημιουργήστε ένα σενάριο αυτόματης δημιουργίας αντιγράφων ασφαλείας

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

$ sudo vim /bin/autobackup.sh 

Τώρα αντιγράψτε και επικολλήστε το ακόλουθο σενάριο, φροντίστε να αντικαταστήσετε τις τιμές των BACKUP_SOURCE, BACKUP_DEVICE, και MOUNT_POINT στο σενάριο.

#!/usr/bin/bash
BACKUP_SOURCE="/home/admin/important"
BACKUP_DEVICE="/dev/external1"
MOUNT_POINT="/mnt/external"


#check if mount point directory exists, if not create it
if [ ! -d “MOUNT_POINT” ] ; then 
	/bin/mkdir  “$MOUNT_POINT”; 
fi

/bin/mount  -t  auto  “$BACKUP_DEVICE”  “$MOUNT_POINT”

#run a differential backup of files
/usr/bin/rsync -auz "$MOUNT_POINT" "$BACKUP_SOURCE" && /bin/umount "$BACKUP_DEVICE"
exit

Στη συνέχεια, κάντε το σενάριο εκτελέσιμο με την ακόλουθη εντολή.

$ sudo chmod +x /bin/autobackup.sh

Στη συνέχεια, φορτώστε ξανά τους κανόνες udev χρησιμοποιώντας την ακόλουθη εντολή.

$ udevadm control --reload

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

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

Για περισσότερες πληροφορίες, ανατρέξτε στις σελίδες man udev, mount και rsync.

$ man udev
$ man mount 
$ man rsync 

Μπορεί επίσης να θέλετε να διαβάσετε αυτά τα παρακάτω άρθρα σχετικά με τη δημιουργία αντιγράφων ασφαλείας Linux.

  1. rdiff-backup – Ένα απομακρυσμένο εργαλείο δημιουργίας αντιγράφων ασφαλείας για Linux
  2. Tomb – Ένα εργαλείο κρυπτογράφησης αρχείων και προσωπικής δημιουργίας αντιγράφων ασφαλείας για Linux
  3. System Tar and Restore – Ένα ευέλικτο σενάριο δημιουργίας αντιγράφων ασφαλείας για Linux
  4. Πώς να δημιουργήσετε αντίγραφα ασφαλείας με αποδοτικό εύρος ζώνης χρησιμοποιώντας το Duplicity στο Linux
  5. Rsnapshot – Ένα τοπικό/απομακρυσμένο εργαλείο δημιουργίας αντιγράφων ασφαλείας για Linux
  6. Πώς να συγχρονίσετε δύο διακομιστές Web Apache/ιστότοπους χρησιμοποιώντας το Rsync

Αυτα για τωρα! Σε αυτό το άρθρο, εξηγήσαμε τον τρόπο αυτόματης δημιουργίας αντιγράφων ασφαλείας δεδομένων σε ένα αφαιρούμενο μέσο αφού το συνδέσετε στον υπολογιστή σας Linux. Θα θέλαμε να σας ακούσουμε μέσω της παρακάτω φόρμας σχολίων.