Χρήση του Etckeeper για έλεγχο έκδοσης του /etc

Εισαγωγή

Ο /etc/κατάλογος παίζει κρίσιμο ρόλο στον τρόπο λειτουργίας ενός συστήματος Linux. Ο λόγος για αυτό είναι επειδή σχεδόν κάθε αρχείο διαμόρφωσης συστήματος βρίσκεται μέσα στο /etc/. Τα δεδομένα που αποθηκεύονται /etc/δεν σχετίζονται μόνο με τις ενσωματωμένες βιβλιοθήκες συστήματος, αλλά και για το πρόσφατα εγκατεστημένο λογισμικό και τη διαμόρφωσή του. Οι εγκαταστάσεις, οι αναβαθμίσεις και οι αλλαγές διαμόρφωσης συστήματος και λογισμικού αποθηκεύονται στο /etc/. Επομένως, είναι καλή πρακτική να χρησιμοποιείτε τον έλεγχο έκδοσης όταν καταφέρνετε /etc/να αποφύγετε πιθανά σφάλματα που προκαλούνται από απρόβλεπτες ή τυχαίες κακές λειτουργίες.

Με το Etckeeper, μπορείτε να διαχειριστείτε εύκολα /etc/τον μηχανισμό ελέγχου έκδοσης χρησιμοποιώντας ένα αποθετήριο Git, Mercurial, Bazaar ή Darcs. Από προεπιλογή, το Etckeeper χρησιμοποιεί το git για να διατηρήσει τον /etc/κατάλογο του αποθετηρίου έκδοσης σε καθημερινή ευαισθησία για να ελαχιστοποιήσει την πιθανή απώλεια δεδομένων. Επιπλέον, σας επιτρέπει να κάνετε τις αλλαγές σας με μη αυτόματο τρόπο ανά πάσα στιγμή.

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

Προαπαιτούμενα

Οι οδηγίες σε αυτό το άρθρο επικυρώθηκαν σε μια παρουσία Vultr CentOS 6 με μια στοίβα LEMP. Οι οδηγίες για άλλες διανομές μπορεί να είναι διαφορετικές.

Σημείωση: είναι μια καλή πρακτική ασφαλείας να έχετε πρόσβαση στο σύστημά σας ως χρήστης χωρίς root με δικαιώματα sudo.

Βήμα 1: Εγκαταστήστε το Etckeeper

Το Etckeeper περιλαμβάνεται στο repo EPEL Yum. Πρέπει να ρυθμίσετε το αποθετήριο EPEL Yum για να εγκαταστήσετε το Etckeeper:

sudo yum install epel-release
sudo yum update
sudo yum install etckeeper

Μια επιτυχημένη εγκατάσταση του Etckeeper θα εγκαταστήσει αυτόματα το git και άλλες εξαρτήσεις.

Μπορείτε να προσαρμόσετε τη διαμόρφωση του Etckeeper επεξεργάζοντας το αρχείο διαμόρφωσης που βρίσκεται στο /etc/etckeeper/etckeeper.conf. Ωστόσο, η προεπιλεγμένη διαμόρφωση είναι επαρκής και θα τη χρησιμοποιήσουμε για τους σκοπούς αυτού του σεμιναρίου.

Βήμα 2: Διαμορφώστε το /etc ως τον κατάλογο εργασίας git του Etckeeper

Μπορείτε να κάνετε το Etckeeper να αντιμετωπίζεται /etc/ως κατάλογος εργασίας git εκτελώντας τις ακόλουθες εντολές:

cd /etc
sudo etckeeper init

Η «init» υπο-εντολή παραπάνω θα δημιουργήσει ένα αρχείο με το όνομα .gitignoreκαι έναν κατάλογο που ονομάζεται .gitτο /etc/.

Το .gitignoreπεριέχει μια προκαθορισμένη λίστα των αρχείων και δεν απαιτεί διαχείριση με έλεγχο έκδοσης. Εάν είναι απαραίτητο, μπορείτε να προσθέσετε ή να διαγράψετε ονόματα αρχείων σε αυτό όπως θέλετε, απλώς θυμηθείτε να βάλετε ένα όνομα αρχείου ανά γραμμή μεταξύ της γραμμής # begin section managed by etckeeper...και της γραμμής # end section managed by etckeeper.

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

Βήμα 3: Εκτελέστε την αρχική δέσμευση

Πριν από την αρχική δέσμευση, μπορείτε να ρίξετε μια ματιά στο τι θα δεσμευτεί:

sudo etckeeper vcs status | more

Η vcsυπο-εντολή του Etckeeper θα καλέσει το λογισμικό ελέγχου έκδοσης (το οποίο είναι git) για να εκτελέσει την ακόλουθη υποεντολή στον /etc/κατάλογο. Άρα η παραπάνω εντολή ισούται με:

sudo git -C /etc status | more

Πατήστε το space barγια να γυρίσετε μια σελίδα. Εάν βρείτε αρχεία που δεν πρέπει να ελέγχονται από την έκδοση, προσθέστε τα στο .gitignoreαρχείο.

Τώρα, μπορείτε να δεσμεύσετε όλα τα περιεχόμενα στον κατάλογο /etc (εκτός από αυτά τα αρχεία που ορίζονται στο .gitignore) στο αποθετήριο git σας. Θυμηθείτε να γράψετε μερικά ουσιαστικά σχόλια ανάμεσα σε δύο εισαγωγικά για έλεγχο.

sudo etckeeper commit "Initial config in /etc"

Εδώ, μπορείτε να συμπιέσετε τον κατάλογο git για να εξοικονομήσετε χώρο στο δίσκο:

sudo etckeeper vcs gc

Βήμα 4: Εκτελέστε μια άλλη δέσμευση αφού κάνετε αλλαγές στο /etc

Σε συνδυασμό με το git, το Etckeeper μπορεί να καταγράψει τυχόν αλλαγές που συμβαίνουν στον /etc/κατάλογο, όπως προσθήκη, τροποποίηση ή διαγραφή αρχείων, καθώς και αλλαγές ιδιοκτησίας ή/και αδειών για αρχεία και καταλόγους. Τα πάντα υπόκεινται /etc/στην πολιτική ελέγχου έκδοσης.

Λάβετε υπόψη ότι το να έχετε /etc/υπό έλεγχο έκδοσης δεν σημαίνει ότι μπορείτε να εκτελέσετε οποιαδήποτε λειτουργία σε αυτό. Σοβαρές δυσλειτουργίες μπορεί να καταστήσουν το σύστημα μη λειτουργικό προτού ο Etckeeper μπορέσει να επαναφέρει τη διαμόρφωση σε κατάσταση λειτουργίας.

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

Για παράδειγμα, προσθέστε το αρχείο abcdeστο /etc/:

sudo touch /etc/abcde

Στη συνέχεια, προσθέστε τη γραμμή 192.168.0.2 desktopστο /etc/hostsαρχείο:

echo '192.168.0.2 desktop' | sudo tee -a /etc/hosts

Επιτέλους, μπορείτε να εκτελέσετε ξανά την υποεντολή "commit":

sudo etckeeper commit "add a file /etc/abcde and add a line to /etc/hosts"

Βήμα 5: Ανάκληση των αλλαγών σας

Αρχικά, μπορείτε να ελέγξετε το ιστορικό git για να λάβετε το αναγνωριστικό και το σχόλιο κάθε δέσμευσης:

sudo etckeeper vcs log

Δεύτερον, μπορείτε να ελέγξετε τις λεπτομέρειες οποιασδήποτε δέσμευσης με τα πρώτα πολλά bit του αναγνωριστικού δέσμευσής της. Εδώ, υποθέτουμε ότι το πρώτο commit id είναι 7f5bff, το δεύτερο commit id είναι 1aa658.

sudo etckeeper vcs show 1aa658

Μπορείτε να πατήσετε jγια να μετακινηθείτε προς τα κάτω, να πατήσετε kγια να μετακινηθείτε προς τα επάνω, να εισαγάγετε /keyword<Enter>για αναζήτηση, να πατήσετε qγια να τερματίσετε.

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

sudo etckeeper vcs diff 7f5bff..1aa658

Τώρα, διαπιστώνετε ότι ρυθμίσατε εσφαλμένα το όνομα του κεντρικού υπολογιστή /etc/hostsκατά την πρώτη και τη δεύτερη δέσμευση, αλλά η προσθήκη του αρχείου /etc/abcdeείναι σωστή λειτουργία, μπορείτε να ανακαλέσετε την αλλαγή μόνο στο /etc/hostsαρχείο με την ακόλουθη εντολή:

sudo etckeeper vcs checkout 7f5bff /etc/hosts

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

sudo etckeeper vcs checkout 7f5bff

Φυσικά, μπορείτε ακόμα να επιστρέψετε στο δεύτερο commit:

sudo etckeeper vcs checkout 1aa658

συμπέρασμα

Έχοντας διαμορφώσει σωστά τις παραμέτρους του Etckeeper, μπορείτε να συντονίσετε και να διατηρήσετε το σύστημά σας με περισσότερη σιγουριά. Ωστόσο, πρέπει να γνωρίζετε ότι ο έλεγχος έκδοσης διαφέρει από τη δημιουργία αντιγράφων ασφαλείας και ότι ο /etc/κατάλογος δεν είναι το μόνο μέρος που πρέπει να ανησυχείτε. Για να διατηρήσετε το σύστημά σας σε φόρμα, πρέπει επίσης να δημιουργείτε αντίγραφα ασφαλείας του συστήματός σας τακτικά εκτός από τον μηχανισμό ελέγχου έκδοσης.

Αφήστε ένα σχόλιο

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

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

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

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

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα