Πώς να εξοικονομήσετε χρόνο με το cron: Βασικός οδηγός και κώδικες δείγματος

Άρθρο που γράφτηκε από:
  • Οδηγοί Φιλοξενίας
  • Ενημερώθηκε: Μάιος 09, 2019

Τι είναι το cron;

Το Cron είναι ένας δαίμονας Linux / UNIX που έχει σχεδιαστεί για να εκτελέσει μια εντολή σε προκαθορισμένο χρόνο. Δεδομένου ότι το cron είναι ένας δαίμονας, μόλις εκτελείται, δεν απαιτεί καμία διαχείριση από το χρήστη. Το Cron ελέγχεται από ένα σύνολο αρχείων που ονομάζονται "cronfiles", παρακάτω είναι μια λίστα κοινών εντολών cron.

Όνομα αρχείου Crontab Εγκαταστήστε το όνομα αρχείου ως αρχείο crontab.
crontab -eΕπεξεργαστείτε το αρχείο crontab.
crontab -lΕμφάνιση του αρχείου crontab.
crontab -rΚαταργήστε το αρχείο crontab.
[Προστατεύεται email]Αποστέλλει την έξοδο στη συγκεκριμένη διεύθυνση.

Κάθε είσοδος στο αρχείο crontab θα αποτελείται από τα ακόλουθα έξι πεδία που χωρίζονται από ένα κενό. Η σειρά των πεδίων μαζί με μια σύντομη περιγραφή καθεμιάς από αυτές παρατίθενται παρακάτω.
ώρα (ες) ημέρα (ες) μήνας (ες) εντολή (ές) εβδομάδας

ΠεδίοαξίαΠαρουσίαση Προϊόντος
Λεπτό0-59Ορίζει το ακριβές λεπτό που θα εκτελέσει η εντολή.
ώρα0-23Ορίζει την ώρα της ημέρας που θα εκτελέσει η εντολή.
Ημέρα1-31Ορίζει την ημέρα του μήνα κατά τον οποίο εκτελείται η εντολή.
Μήνας1-12Ορίζει τον μήνα του έτους που θα εκτελέσει η εντολή.
Καθημερινή0-6Ορίζει την ημέρα της εβδομάδας που θα εκτελέσει η εντολή.
Κυριακή = 0, Δευτέρα = 1, Τρίτη = 2, Τετάρτη = 3, Πέμπτη = 4, Παρασκευή = 5, Σάββατο = 6
εντολήΕιδικόςΗ πλήρης εντολή που θα εκτελεστεί.

Μπορείτε επίσης να χρησιμοποιήσετε ένα * στη θέση του αριθμητικού χαρακτήρα των πέντε πρώτων πεδίων για να υποδείξετε όλες τις νόμιμες τιμές. Για παράδειγμα, η εντολή 0 0 * * 1, θα εκτελέσει σενάριο σε κάθε Δευτέρα.
Το μεγαλύτερο μέρος αυτής της ενότητας έχει σημασία μόνο αν εκτελείτε δέσμες ενεργειών από το τερματικό εντολών σε Linux / UNIX, εάν χρησιμοποιείτε ένα cPanel παρακαλούμε δείτε την ενότητα "Πώς μπορώ να εκτελέσω ένα script cron από το cPanel μου".

Πώς μπορώ να εξοικονομήσω χρόνο με το cron;

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

Παρακάτω είναι δείγματα σεναρίων που μπορείτε να χρησιμοποιήσετε για να ρυθμίσετε αυτές τις εργασίες με το cron.

Αυτοματοποιημένες αντιγραφές ιστοτόπων (Σενάριο παρέχεται από Ubuntu)

#! / Bin / sh

################################

#

# Δημιουργία αντιγράφων ασφαλείας σε δέσμη ενεργειών εγκατάστασης NFS.

#

################################

# Τι πρέπει να δημιουργήσετε αντίγραφα ασφαλείας.

backup_files = "/ home / var / spool / mail / etc / root / boot / opt"

# Πού να δημιουργήσετε αντίγραφα ασφαλείας σε.

dest = "/ mnt / backup"

# Δημιουργία αρχείου όνομα αρχείου.

ημέρα = $ (ημερομηνία +% Α)

hostname = $ (όνομα κεντρικού υπολογιστή -s)

archive_file = "$ hostname- $ day.tgz"

# Εκτυπώστε το μήνυμα κατάστασης εκκίνησης.

echo "Δημιουργία αντιγράφων ασφαλείας των $ backup_files στο $ dest / $ archive_file"

δεδομένα

ηχώ

# Δημιουργήστε αντίγραφα ασφαλείας των αρχείων χρησιμοποιώντας tar.

tar cf $ $ dest / $ archive_file $ backup_files

# Εκτύπωση τελικού μηνύματος κατάστασης.

ηχώ

echo "Backup finished"

δεδομένα

# Μεγάλη λίστα αρχείων στο $ dest για να ελέγξετε τα μεγέθη αρχείων.

ls -lh $ dest

Αυτόματες αντιγράφων ασφαλείας βάσεων δεδομένων WordPress (Σενάριο παρέχεται από το Tamba2.org.uk)

# Ρυθμίστε τις μεταβλητές 4
# Αντικαταστήστε τι είναι μετά το = με τις πληροφορίες από το αρχείο wp-config.php

DBNAME = DB_NAME

DBPASS = DB_PASSWORD

DBUSER = DB_USER

# Κρατήστε το "γύρω από τη διεύθυνσή σας
EMAIL = "[Προστατεύεται email]_email.com "

mysqldump -opt -u $ DBUSER -p $ DBPASS $ DBNAME> backup.sql
gzip backup.sql
ΗΜΕΡΟΜΗΝΙΑ = `ημερομηνία +% Y% m% d`; mv backup.sql.gz $ DBNAME-backup- $ DATE.sql.gz
echo 'Όνομα Blog: Το MySQL Backup επισυνάπτεται' | mutt -a $ DBNAME-backup- $ DATE.sql.gz $ EMAIL -s "MySQL Backup"
rm $ DBNAME-backup- $ DATE.sql.gz

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

Πώς μπορώ να εκτελέσω ένα script cron από το cPanel μου;

1. Συνδεθείτε σε σας cPanlel

2. Εντοπίστε το εικονίδιο "Εργασίες cron" (Αυτό γενικά βρίσκεται στην προηγμένη ενότητα).

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

4. Επιλέξτε πότε θα θέλατε να εκτελεστεί το σενάριο cron. (Η επιλογή ενός στοιχείου από το αναπτυσσόμενο πλαίσιο "Κοινές ρυθμίσεις" θα συμπληρώσει τα πεδία για εσάς.)

5. Εισαγάγετε τη διαδρομή του σεναρίου που θέλετε να εκτελέσετε. (Σημείωση: Θα χρειαστεί να φορτώσετε το αρχείο δέσμης ενεργειών στο διακομιστή σας, για περισσότερες πληροφορίες, δείτε παρακάτω - "Πώς μπορώ να ανεβάσω το αρχείο δέσμης ενεργειών μου" για λεπτομέρειες.)

6. Κάντε κλικ στην επιλογή "Προσθήκη νέας εργασίας Cron"

7. Η δουλειά σας cron πρέπει τώρα να αναγράφεται στην ενότητα "Τρέχουσες εργασίες Cron".

Πώς μπορώ να ανεβάσω το αρχείο δέσμης ενεργειών μου;

  1. Από το cPanel επιλέξτε "Διαχείριση αρχείων"
  2. Στη συνέχεια, επιλέξτε "Αρχική Κατάλογος" και κάντε κλικ στο "Go"
  3. Τώρα επιλέξτε "Μεταφόρτωση".
  4. Ορίστε τα δικαιώματα αρχείων σας στο 755
  5. Κάντε κλικ στην επιλογή "Αναζήτηση"
  6. Περιηγηθείτε στο φάκελο που έχει το σενάριό σας και κάντε κλικ σε αυτό και στη συνέχεια κάντε κλικ στο κουμπί "Άνοιγμα".

Σημείωση: Το cPanel μπορεί να ρυθμιστεί διαφορετικά από αυτό που εμφανίζεται παραπάνω, αλλά οι γενικές έννοιες θα πρέπει να είναι οι ίδιες.

Άρθρο του WHSR Guest

Αυτό το άρθρο γράφτηκε από έναν συνεισφέροντα. Οι απόψεις του συγγραφέα παρακάτω είναι εξ ολοκλήρου δικές του και μπορεί να μην αντικατοπτρίζουν τις απόψεις του WHSR.

Συνδέομαι: