Κατάλογος άρθρου
Η ενσωματωμένη διεργασία cron του Linux μπορεί να μας βοηθήσει να καλύψουμε τις ανάγκες μας για την εκτέλεση προγραμματισμένων εργασιών. Χρησιμοποιώντας cron και shell scripts, μπορούμε εύκολα να εκτελέσουμε πολύ σύνθετες εντολές εργασιών βάσει προγράμματος.
Τι είναι το Cron;
Συχνά χρησιμοποιούμε την εντολή crontab , η οποία είναι η συντομογραφία του cron table.
Είναι το αρχείο ρυθμίσεων για το cron, το οποίο μπορεί επίσης να ονομαστεί λίστα εργασιών.
Μπορούμε να βρούμε τα σχετικά αρχεία ρυθμίσεων στους παρακάτω φακέλους.
- Ο κατάλογος /var/spool/cron/ αποθηκεύει εργασίες crontab για κάθε χρήστη, συμπεριλαμβανομένου του root, και κάθε εργασία έχει το όνομα του δημιουργού
- /etc/crontab Αυτό το αρχείο είναι υπεύθυνο για τον προγραμματισμό διαφόρων διοικητικών εργασιών και εργασιών συντήρησης.
- /etc/cron.d/ Αυτός ο κατάλογος χρησιμοποιείται για την αποθήκευση τυχόν αρχείων crontab ή σεναρίων που πρόκειται να εκτελεστούν.
- Μπορούμε επίσης να βάλουμε σενάρια στο /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly καταλόγους, αφήστε το να εκτελείται κάθε ώρα/ημέρα/εβδομάδα, μήνα.
Πώς χρησιμοποιείται το Crontab;
Οι εντολές που χρησιμοποιούμε συνήθως είναι οι εξής:
crontab [-u username] //省略用户名表示操作当前用户的crontab
-e (编辑工作表)
-l (列出工作表里的命令)
-r (删除工作表)χρησιμοποιούμεcrontab -eΕισαγάγετε την επεξεργασία του φύλλου εργασίας του τρέχοντος χρήστη, η οποία είναι μια κοινή διεπαφή vim.Κάθε γραμμή είναι μια εντολή.
Επεξεργασία φύλλου εργασίας ▼
crontab -e
Λίστα φύλλων εργασίας ▼
crontab -l
Διαγραφή φύλλου εργασίας ▼
crontab -r
Οι εντολές crontab δομούνται ως χρόνος + ενέργεια. Οι επιλογές ώρας περιλαμβάνουν λεπτά, ώρες, ημέρα, μήνα και Παρασκευή. Οι τελεστές περιλαμβάνουν...
- * όλους τους αριθμούς στο εύρος
- / πόσοι αριθμοί
- - από το Χ στο Ω
- ,αριθμοί κατακερματισμού
Παράδειγμα εντολής προγραμματισμένης εργασίας Crontab

Παράδειγμα 1: Εκτελέστε το myCommand κάθε 1 λεπτό
* * * * * myCommand
Παράδειγμα 2: Εκτέλεση το 3ο και το 15ο λεπτό κάθε ώρας
3,15 * * * * myCommand
实例3:在上午8点到11点的第3和第15分钟执行
3,15 8-11 * * * myCommand
实例4:每隔两天的上午8点到11点的第3和第15分钟执行
3,15 8-11 */2 * * myCommand
实例5:每周一上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 myCommand
Παράδειγμα 6: Επανεκκίνηση του smb στις 21:30 κάθε βράδυ
30 21 * * * /etc/init.d/smb restart
实例7:每月1、10、22日的4 : 45重启smb
45 4 1,10,22 * * /etc/init.d/smb restart
Παράδειγμα 8: Επανεκκίνηση του smb στις 1:10 κάθε Σάββατο και Κυριακή
10 1 * * 6,0 /etc/init.d/smb restart
Παράδειγμα 9: Επανεκκινήστε το smb κάθε 18 λεπτά μεταξύ 00:23 και 00:30 κάθε μέρα
0,30 18-23 * * * /etc/init.d/smb restart
Παράδειγμα 10: Επανεκκίνηση του smb κάθε Σάββατο στις 11:00
0 23 * * 6 /etc/init.d/smb restart
Παράδειγμα 11: Επανεκκινήστε το smb κάθε ώρα
* */1 * * * /etc/init.d/smb restart
Παράδειγμα 12: Επανεκκινήστε το smb κάθε ώρα μεταξύ 11 μ.μ. και 7 π.μ
* 23-7/1 * * * /etc/init.d/smb restart
Πώς να διαγράψετε μια καθορισμένη εργασία Crontab;
SSH εισάγετε την ακόλουθη εντολή crontab ▼
crontab -e
- Υποθέτοντας πολλαπλές εργασίες, διαγράψτε την καθορισμένη προγραμματισμένη εργασία στο vim (μετακινήστε τον κέρσορα στη γραμμή διαμόρφωσης που θέλετε να διαγράψετε, πατήστε το πλήκτρο διαγραφής για διαγραφή)
τύπος :wq αποθήκευση και έξοδος
Ελέγξτε για να δείτε εάν η εργασία Crontab διαγράφηκε;
crontab -l
- Διαπιστώθηκε ότι η προγραμματισμένη εργασία crontab που μόλις διαγράφηκε δεν υπάρχει, πράγμα που σημαίνει ότι η διαγραφή είναι επιτυχής.
Πώς να επανεκκινήσετε την υπηρεσία Cron;
Χρήση εντολών διαχείρισης υπηρεσιών συστήματος : Σε ορισμένες περιπτώσεις, ενδέχεται να χρειαστεί να χρησιμοποιήσετε απευθείας εντολές διαχείρισης υπηρεσιών συστήματος για να επανεκκινήσετε την υπηρεσία cron.
Συγκεκριμένα, κατά την προσθήκη ή τροποποίηση προγραμματισμένων εργασιών Cron στο HestiaCP , η υπηρεσία Cron πρέπει να επανεκκινηθεί για να τεθούν σε ισχύ οι αλλαγές.
Αυτό συνήθως περιλαμβάνει μία από τις ακόλουθες εντολές:
Για χρήση
systemdΣύστημα:sudo systemctl restart cronΓια χρήση
init.dΣενάριο για παλιά συστήματα:sudo /etc/init.d/cron restartΓια χρήση
serviceΣύστημα εντολών:sudo service cron restart
Πίνακας ελέγχου CWPΠώς να ρυθμίσετε τις προγραμματισμένες εργασίες του Crontab
- Στην προγραμματισμένη εργασία, προσθέστε μια εντολή συγχρονισμού για να συγχρονίσετε αυτόματα τα αρχεία αντιγράφων ασφαλείας του πίνακα ελέγχου CWP στο GDrive.
Εάν χρησιμοποιείτε τον Πίνακα Ελέγχου CWP, συνδεθείτε στον Πίνακα Ελέγχου CWP的 Server Setting → Crontab for root ▼

Στην "Προσθήκη πλήρους προσαρμοσμένης εργασίας Cron", πληκτρολογήστε την ακόλουθη πλήρως προσαρμοσμένη εντολή cron ▼
00 7 * * * rclone sync /backup2 gdrive:cwp-backup2 55 7 * * * rclone sync /newbackup gdrive:cwp-newbackup
- (Αυτόματος συγχρονισμός του τοπικού καταλόγου κάθε πρωί στις 7:00 π.μ
/backup2στο δίσκο δικτύου με το όνομα διαμόρφωσης gdrivebackup2Πίνακας περιεχομένων) - (Αυτόματος συγχρονισμός του τοπικού καταλόγου κάθε πρωί στις 7:55 π.μ
/newbackupστο δίσκο δικτύου με το όνομα διαμόρφωσης gdrivecwp-newbackupΠίνακας περιεχομένων) - ΣυγχρονισμόςWordPressΓια τα αρχεία ιστότοπου, συνιστάται να μην δημιουργείτε αντίγραφα ασφαλείας σταδιακά, επειδή η δοκιμή διαπίστωσε ότι εάν τα ονόματα των αρχείων είναι ίδια, αλλά τα περιεχόμενα των αρχείων είναι διαφορετικά, δεν θα συγχρονιστούν.
Επειδή η διεργασία rclone ενδέχεται να συνεχίσει να εκτελείται στο παρασκήνιο μετά την προγραμματισμένη έναρξη του αυτόματου συγχρονισμού, μπορεί να καταναλώσει έως και 20% των πόρων της CPU, με αποτέλεσμα την σπατάλη πόρων διακομιστή.
Επομένως, είναι απαραίτητο να προσθέσετε μια πλήρως προσαρμοσμένη προγραμματισμένη εντολή εργασίας για να αναγκάσετε τη διαδικασία rclone να κλείσει ▼
00 09 * * * killall rclone
- (Αυτόματο κλείσιμο αναγκαστικά της διαδικασίας rclone στις 7:00 κάθε πρωί)
Εάν ο πίνακας ελέγχου CWP δεν μπορεί να επεξεργαστεί τις προγραμματισμένες εργασίες του Crontab, μπορείτε να χρησιμοποιήσετε το FTP软件ανοίξτε ένα αρχείο /var/spool/cron/ Επεξεργαστείτε απευθείας τις χρονομετρημένες εργασίες του Crontab.
Πώς να χρησιμοποιήσετε το rclone για να δημιουργήσετε αντίγραφο ασφαλείας ενός VPS; Κάντε κλικ στον παρακάτω σύνδεσμο για να δείτε το σεμινάριο CentOS σχετικά με τον αυτόματο συγχρονισμό χρησιμοποιώντας το GDrive ▼
Ας ελπίσουμε ότι το άρθρο "Linux Crontab Scheduled Script Task Commands & Configuration File Usage" που κοινοποιήθηκε στο ιστολόγιο του Chen Weiliang ( https://www.chenweiliang.com/ ) θα σας φανεί χρήσιμο.
Μη διστάσετε να κοινοποιήσετε τον σύνδεσμο αυτού του άρθρου: https://www.chenweiliang.com/cwl-1429.html

