Wenn die Website des Linux-Systems in Betrieb ist, müssen wir häufig die Website warten, z. B. die Überprüfung der verbleibenden Ressourcen und die Reaktion, Protokollsegmentierung, Datensortierung, die Ausführung bestimmter Aufgaben in bestimmten Zuständen usw., was alles erforderlich ist Linux soll bestimmte Aufgaben automatisch ausführen können. In diesem Blogbeitrag wird vorgestellt, wie Sie häufige Linux-Automatisierungsaufgaben ausführen.
„Automatisierung“ von Linux
Das Erreichen einer „Automatisierung“ hat folgende Vorteile:
Sparen Sie Arbeitskräfte, ein Skript reicht aus.
Durch die automatische Ausführung nachts kann die Spitzenverkehrszeit der Website vermieden werden und die Effizienz der Website tagsüber wird nicht beeinträchtigt.
Genau, es werden keine Fehler gemacht, wenn die Einstellungen perfekt sind.
Das Wichtigste ist natürlich die Sicherheit, da Sie bestimmte Befehle nicht häufig eingeben müssen.
Starten
Das Starten des Computers sollte für uns ein sehr häufiges Bedürfnis sein, bestimmte Befehle automatisch auszuführen, um Dienste, Prozesse usw. zu starten. Damit müssen wir nicht mehr dieselben Befehle eingeben Befehle jedes Mal, wenn der Computer eingeschaltet wird.
chkconfig-Befehl
Verwenden Sie den Befehl chkconfig, um bestimmte Dienste oder Programme auf verschiedenen Startebenen zu starten.
Lassen Sie uns zunächst über die Betriebssystemebene von Linux sprechen:
Stufe 0 bedeutet: Herunterfahren
Level 1 bedeutet: Einzelbenutzermodus
Level 2 bedeutet: Mehrbenutzer-Befehlszeilenmodus ohne Netzwerkverbindung
Level 3 bedeutet: Mehrbenutzer-Befehlszeilenmodus mit Netzwerkverbindung
Level 4 bedeutet: Nicht verfügbar
Level 5 bedeutet: Mehrbenutzermodus mit grafischer Oberfläche
Level 6 bedeutet: Neustart
Der Befehl von chkconfig lautet wie folgt:
chkconfig --list //命令查看已设置的开启自启动列表。 xxxd 0:off 1:off 2:on ... 6:off //list的结果,表示在xxxd服务在启动级别为2 3 4 5 的情况下会自动启动。 chkconfig --add xxxd//向任务列表中添加一个xxxd服务 chkconfig [--level 1/2/../6] xxxd on/off//设置xxxd用服务在n状态为开/关,[]内省略则在2345级别开启 chkconfig --del xxxd //将任务列表中的xxxd服务删除
rc.d-Dateibearbeitung
Sie können die Dateien im Verzeichnis /etc/rc.d/ auch direkt bearbeiten, um einen automatischen Start zu erreichen. In diesem Verzeichnis befinden sich viele Dateien. rcn.d ist der Startordner, wenn der Startstatus n ist. rc.sysinit und init.d sind alle vom System festgelegte Systemmodule oder selbststartende Dateien.
Wir verwenden vim rc.local, um die rc.local-Datei zu bearbeiten und unseren eigenen Startplan anzupassen. Die Befehle sind sehr einfach, genau wie bei normalen Vorgängen. Beispielsweise bedeutet /usr/local/apache/bin/apachectl start, dass der Apache-Server nach dem Booten automatisch gestartet wird.
bei der Umsetzung geplanter Aufgaben
at ist ein einfaches geplantes Aufgabenprogramm mit einfachen Funktionen. Es kann nur einmalige geplante Aufgaben ausführen. Seine Verwendung ist wie folgt:
#at time //at加时间启动at命令 at>operation //输入要执行的操作 at>Ctrl+D //按Ctrl+D退出命令编辑
Die übliche Zeitform ist wie folgt
at H:m tomorrow //第二天的H点m分 at now + n minutes/hours/days/weeks //在n分/时/天/周后 at midnight //在午夜=-= at H:m pm/am //在当天上午/下午的H点m分
Wir können den aktuellen Befehl von at auch in der Datei /var/spool/at sehen. Es ist außerdem zu beachten, dass der atd-Prozess unter Linux standardmäßig geschlossen ist und manuell geöffnet werden muss.
crontab implementiert geplante Aufgaben
Der integrierte Cron-Prozess von Linux kann uns dabei helfen, diese Anforderungen zu erfüllen. Mit Cron- und Shell-Skripten sind sehr komplexe Anweisungen kein Problem.
Cron-Einführung
Der Cron-Daemon ist ein kleines Subsystem, das aus Dienstprogrammen und Konfigurationsdateien besteht. Auf fast allen UNIX-ähnlichen Systemen kann man ps aux|grep cron verwenden, um den Crond-Daemon zu finden.
Was wir häufig verwenden, ist der Befehl crontab, die Abkürzung für Cron Table. Es handelt sich um die Cron-Konfigurationsdatei, die auch als Jobliste bezeichnet werden kann. Die relevanten Konfigurationsdateien finden wir in den folgenden Ordnern.
Das Verzeichnis /var/spool/cron/ speichert Crontab-Aufgaben für jeden Benutzer, einschließlich Root. Jede Aufgabe ist nach dem Ersteller benannt.
/etc/crontab Diese Datei ist für die Planung verschiedener Verwaltungs- und Wartungsaufgaben verantwortlich.
/etc/cron.d/ Dieses Verzeichnis wird zum Speichern aller auszuführenden Crontab-Dateien oder Skripte verwendet.
Wir können das Skript auch in den Verzeichnissen /etc/con.hourly, /etc/con.daily, /etc/con.weekly, /etc/con.monthly ablegen und es jede Stunde/jeden Tag/jede Woche oder jeden Monat ausführen lassen .
Verwendung von Crontab
Unsere am häufigsten verwendeten Befehle sind wie folgt:
crontab [-u username] //省略用户表表示操作当前用户的crontab -e (编辑工作表) -l (列出工作表里的命令) -r (删除工作作)
Wir verwenden crontab -e, um die Arbeitsblattbearbeitung des aktuellen Benutzers einzugeben, eine gängige VIM-Schnittstelle. Jede Zeile ist ein Befehl.
Die Befehlsstruktur von crontab ist Zeit + Aktion. Die Zeit umfasst Minuten, Stunden, Tage, Monate und Freitage. Die Operatoren umfassen
* Alle Zahlen innerhalb des Wertebereichs
/Wie viele Zahlen sind jedes Mal vergangen
–Von X bis Z
, Hash-Nummer
Hier ein paar Beispiele.
时间 注释 0 0 25 12 * //在12月25日的0时0分 */5 * * * * //每过5分钟 * 4-6 * * * //每天的4 5 6点 * * * * 2,5 //每周二和周五
Mit einfachem Shell-Skript
Wenn unsere Befehle sehr komplexe Operationen wie logische Beurteilungen haben, wird es etwas schwierig sein, crontab direkt zu bearbeiten. In diesem Fall können wir Shell-Skripte verwenden. Der Ursprung und die Klassifizierungsdefinition stimmen nicht mit dem Titel überein, daher werde ich nicht näher auf die Verwendung eingehen.
Wir verwenden vim /usr/sh/test.sh, um ein Shell-Skript mit vim zu bearbeiten
#!/bin/sh //声明开始shell脚本 a = "hello world" //定义一个shell变量 echo $a //熟悉的echo,输出a变量
Bearbeiten Sie dann crontab mit crontab -e und fügen Sie */5 * * * * /usr/sh/test.sh hinzu, um das test.sh-Skript alle fünf Minuten auszuführen. Sie können auch /phppath/php /filepath/test.php verwenden PHP-Prozess zum Ausführen von PHP-Programmen.
Wenn Sie glauben, dass dieser Blog-Beitrag für Sie hilfreich ist, können Sie mich weiterempfehlen oder mir folgen. Wenn Sie Fragen haben, können Sie unten eine Nachricht hinterlassen. Vielen Dank.
Das obige ist der detaillierte Inhalt vonLernen Sie diese Linux-„Automatisierungen' kennen, um Aufgaben einfach zu erledigen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!