Πώς να εκτελέσετε το Script Bash ως Root κατά την εκκίνηση στο Linux
Θέλατε ποτέ να εκτελέσετε ένα σενάριο κατά την εκκίνηση με προνόμια root; Εάν έχετε έναν κεντρικό διακομιστή ή ίσως απλώς και μόνο μια επιφάνεια εργασίας Linux, αυτό θα μπορούσε να έχει περάσει από το μυαλό σας. Αυτό ακούγεται άβολο, αλλά αν καταλάβετε τους κινδύνους, η ανταμοιβή για να γίνει αυτό μπορεί να είναι αρκετά καλή.
Οι κύριοι λόγοι είναι ότι δεν θα υπάρξει εκκίνηση του διακομιστή, η σύνδεση με το ssh, η εισαγωγή ενός κωδικού πρόσβασης, η λήψη ενός ριζικού κελύφους και η χειροκίνητη εκτέλεση δέσμης ενεργειών μετά από δέσμη ενεργειών. Αντ 'αυτού, αξιοποιήστε τη δύναμη του cron και ρυθμίστε το σύστημά σας να εκτελεί αυτόματα αυτά τα σενάρια κατά την εκκίνηση! Δείτε πώς να το κάνετε.
Ρύθμιση του Cron
Οι περισσότερες διανομές Linux έρχονται με τη δυνατότητα πρόσβασης στο cron μόλις εισέρχονται στο crontab -e
. Ωστόσο, εάν έχετε εισάγει αυτήν την εντολή και δεν έχει συμβεί τίποτα, βρίσκεστε σε μια διανομή Linux που δεν έχει τρόπο επικοινωνίας με το cron. Αυτό σημαίνει ότι θα πρέπει να εγκαταστήσετε ένα εργαλείο για να συνεχίσετε. Το πιο δημοφιλές εργαλείο που χρησιμοποιείται σε αυτή την κατάσταση είναι ένας δαίμονας γνωστός ως "cronie." Είναι ένα πολύ δημοφιλές εργαλείο και βρίσκεται στις πιο δημοφιλείς αποθήκες διανομής του Linux.
Ανοίξτε ένα τερματικό και εγκαταστήστε το cronie με το διαχειριστή πακέτων. Εναλλακτικά, κατευθυνθείτε προς αυτή τη σελίδα και κάντε λήψη ενός πακέτου για τη διανομή σας.
Ρύθμιση της δέσμης ενεργειών με το Cron
Το άνοιγμα ενός crontab είναι πολύ εύκολο. Για να ξεκινήσετε, ανοίξτε ένα παράθυρο τερματικού και πληκτρολογήστε την ακόλουθη εντολή:
sudo crontab -e
Σημείωση : το sudo
είναι σημαντικό αν θέλετε να τρέξετε το σενάριο ως root. Μπορείτε να παραλείψετε το sudo
εάν θέλετε απλώς να εκτελέσετε το σενάριο ως κανονικό χρήστη.
Εάν το σύστημα δεν έχει χρησιμοποιήσει προηγουμένως το crontab, ο χρήστης θα χρειαστεί να καθορίσει έναν επεξεργαστή με τον οποίο θα συνεργάζεται. Αν και όλοι οι συντάκτες είναι καλοί με τον δικό τους τρόπο, επιλέξτε "nano", καθώς είναι ο απλούστερος επεξεργαστής κειμένου και δεν απαιτεί πολλή αναστάτωση. Με τον επεξεργαστή που επιλέξατε, το cron θα φορτώσει ένα προκαθορισμένο αρχείο με λεπτομερείς οδηγίες για το πώς λειτουργεί όλα.
Μέσα στον επεξεργαστή nano του τερματικού μετακινηθείτε προς τα κάτω και ξεκινήστε γράφοντας το "@reboot". Η εντολή reboot
είναι το κλειδί εδώ καθώς λέει στο cron την επανεκκίνηση αυτής της εντολής για να εκτελείται κάθε φορά. Αμέσως μετά την επανεκκίνηση, προσθέστε τη διαδρομή πλήρους αρχείου στο script bash.
@reboot /home/derrik/startupscript.sh
Τώρα που έχει ρυθμιστεί η εντολή, μπορεί να αποθηκευτεί το crontab. Πατήστε "Ctrl + o" στο πληκτρολόγιο. Αυτό θα προτρέψει τον χρήστη να "γράψει το αρχείο." Από προεπιλογή, το cron ονομάζει το crontab, οπότε μην αλλάξετε τίποτα. Πατήστε το πλήκτρο enter για να αποθηκεύσετε το crontab.
Καταργήστε τη δέσμη ενεργειών από την εκκίνηση
Με τον ίδιο τρόπο που η εντολή προστέθηκε στο crontab, μπορεί να αφαιρεθεί. Για να το κάνετε αυτό, ανοίξτε ένα τερματικό και πληκτρολογήστε sudo crontab -e
. Αυτό θα φορτώσει το αρχείο crontab. Απλά διαγράψτε την εντολή που προστέθηκε, αποθηκεύστε την και κάντε επανεκκίνηση του υπολογιστή (ή του διακομιστή).
Αντιμετώπιση προβλημάτων Cron
Μερικές φορές το cron δεν εκτελεί εντολές και αυτό μπορεί να είναι ένα πρόβλημα. Ο ευκολότερος τρόπος για να αντιμετωπίσετε τυχόν προβλήματα με το cron (εάν υπάρχει) είναι να εξετάσετε το αρχείο καταγραφής συστήματος. Για να το κάνετε αυτό, ανοίξτε το παράθυρο τερματικού και πληκτρολογήστε αυτήν την εντολή:
grep CRON / var / log / syslog
Το syslog δείχνει όλα τα συμβάντα του συστήματος και χρησιμοποιώντας τη εντολή grep
είναι δυνατό να φιλτράρετε τι κάνει το cron και το crontag. Αυτό θα επιτρέψει στους χρήστες να εντοπίσουν εύκολα και να διορθώσουν οτιδήποτε μπορεί να πάει στραβά.
συμπέρασμα
Το Bash scripting είναι ένα θαυμάσιο πράγμα, και ένα από τα ισχυρά πλεονεκτήματα του Linux. Κάνει τη διαχείριση διακομιστών και ακόμη και κανονικών υπολογιστών Linux ευκολότερη λόγω της δυνατότητας να λαμβάνουν μεγάλα ποσά εντολών και να αυτοματοποιούνται. Με την προσθήκη του cron στην εικόνα, αυτά τα σενάρια έχουν τη δυνατότητα να γίνουν ακόμα πιο χρήσιμα. Μην περιστρέφετε πια μετά την εκκίνηση του boot σας από το Linux. Ακριβώς ρυθμίστε το και ξεχάστε το!
Τι scripts ρίζας θα εκτελέσετε κατά την εκκίνηση στο κιβώτιο Linux σας; Πείτε μας παρακάτω!