Lösen Sie das Problem der regelmäßigen automatischen Dateilöschung durch Crontab + Shell-Skript unter Centos7

Lösen Sie das Problem der regelmäßigen automatischen Dateilöschung durch Crontab + Shell-Skript unter Centos7

Problembeschreibung:

In letzter Zeit besteht die Forderung, dass die Datenmenge, die jedes Mal von rsync synchronisiert wird, groß ist, die Datenbank-Bak-Datei jedoch beibehalten werden muss

Es reicht aus, es 7 Tage lang aufzubewahren, sodass Sie die Bak-Dateien im Ordner automatisch bereinigen müssen

Lösung:

Verwenden Sie Shell-Skript, um Aufgaben in Ordnern regelmäßig zu löschen

1. Erstellen Sie eine Shell-Datei

[root@zabbix-Skript]# vim backup_sql_clean.sh
#!/bin/sh
finde /data1/backup/KDKDA\$AGKDPAYKT/XNAKSD/FXUIJ -mtime +10 -name "*.bak" -exec rm -rf {} \;

Parameterbeschreibung:

/data1/backup/KDKDA\$AGKDPAYKT/XNAKSD/FXUIJ #Dies ist der Dateipfad

-mtime +10 #Dies ist die Anzahl der Tage, die aufbewahrt werden sollen, 10 bedeutet 10 Tage

-name "*.bak" #Dies ist der Name der zu löschenden Datei. Das Hinzufügen eines Suffixes bedeutet, dass Dateien dieses Typs gelöscht werden

Andere sind Linux-Befehle

2. Legen Sie die Shell-Dateiberechtigungen fest

[root@zabbix-Skript]# chown 777 backup_sql_clean.sh

3. Legen Sie die regelmäßige Crontab-Ausführung fest

Mit dem Befehl crontab können Sie Anweisungen festlegen, die regelmäßig ausgeführt werden sollen

Beschreibung des Crontab-bezogenen Befehls: https://www.jb51.net/article/151069.htm

[root@zabbix /]# crontab -e
0 0 * * 7 /data/script/backup_sql_clean.sh

4. Starten Sie den Crond-Prozess

Das Konzept von crond ist untrennbar mit crontab verbunden. Crontab ist ein Befehl, der häufig in Unix- und Unix-ähnlichen Betriebssystemen verwendet wird und dazu dient, Anweisungen festzulegen, die regelmäßig ausgeführt werden sollen.

Dieser Befehl liest Anweisungen vom Standardeingabegerät und speichert sie in der Datei „crontab“ zum späteren Lesen und Ausführen. Und crond ist sein Daemon.

[root@zabbix /]# systemctl status crond.service #Crond-Status anzeigen [root@zabbix /]# systemctl start crond.service #Crond-Dienst starten [root@zabbix /]# systemctl restart crond.service #Crond-Dienst neu starten

Auffüllen;

Hier ist eine Einführung in die geplante Dateilöschung in centOS7

1. Rufen Sie das Linux-System auf

2. Erstellen Sie in einem beliebigen Verzeichnis eine Datei mit der Endung sh, zum Beispiel:

3. Bearbeiten und öffnen Sie die Datei, wie in der Abbildung gezeigt:

4. Drücken Sie die Taste „i“ oder die Taste „Einfügen“ auf der Tastatur, um in den Bearbeitungsmodus zu wechseln.

eingeben:

#!/bin/sh
finde /data/iqmkj/backup/mysql -mtime +7 -name "*.sql" -exec rm -rf {} \;

Wie in der Abbildung gezeigt:

veranschaulichen:

"/data/iqmkj/backup/mysql": Das Verzeichnis, in dem sich die zu löschenden Dateien befinden.
„+7“: Die Anzahl der Tage, für die Dateien aufbewahrt werden sollen, d. h. Dateien, die älter als ein paar Tage sind, werden gelöscht.
„*.sql“: löscht Dateien mit der Endung .sql.
Die anderen sind feste Zeichen.

5: Speichern Sie die bearbeitete Datei

Drücken Sie die Taste „Esc“ auf der Tastatur und geben Sie dann „:wq“ in das aktuelle Fenster ein. Die Datei wurde erfolgreich gespeichert und kehrt automatisch zur Hauptoberfläche zurück.

6. Autorisieren Sie die Datei

eingeben:

chown 777 backup_mysql.sh

Wenn die Autorisierung fehlschlägt, wählen Sie die Datei direkt aus, klicken Sie mit der rechten Maustaste und legen Sie die Berechtigungen fest, um alle zu überprüfen, oder legen Sie „777“ fest.

7: Erstellen Sie einen Timer mit den geplanten Aufgaben von Centos7

Geben Sie „crontab -e“ in der Hauptschnittstelle ein, um die Schnittstelle zum Bearbeiten geplanter Aufgaben aufzurufen.

8. Geplante Aufgaben einrichten

Fügen Sie "0 4 * * * /data/iqmkj/backup/mysql/backup_mysql_clean.sh" ein.
veranschaulichen:
Der Dateipfad ist der im zweiten Schritt erstellte Dateipfad.

9. Konfiguration der geplanten Aufgabe speichern

Drücken Sie die Taste „Esc“ auf der Tastatur und geben Sie dann „:wq“ in das aktuelle Fenster ein. Die Datei wurde erfolgreich gespeichert und kehrt automatisch zur Hauptoberfläche zurück.

10. Starten Sie den Timer

Geben Sie auf der Hauptschnittstelle „/bin/systemctl start crond.service“ ein. Nun sind alle Konfigurationen abgeschlossen.

veranschaulichen:

Starten Sie die geplante Aufgabe: /bin/systemctl start crond.service
Stoppen Sie die geplante Aufgabe: /bin/systemctl stop crond.service
Starten Sie die geplante Aufgabe neu: /bin/systemctl restart crond.service
Überprüfen Sie den Status geplanter Aufgaben: /bin/systemctl status crond.service

Zusammenfassen

Oben habe ich Ihnen die Lösung des Problems der regelmäßigen automatischen Dateilöschung durch Crontab+Shell-Skript unter Centos7 vorgestellt. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • So erstellen Sie eine kontinuierliche Integrationsumgebung mit Jenkins+Maven+Git auf CentOS7
  • Installieren Sie die virtuelle CentOS7-Maschine unter Win10
  • So legen Sie eine feste IP-Adresse in einer virtuellen CentOS7-Maschine fest
  • Centos7-Installation des in Nginx integrierten Lua-Beispielcodes
  • So verwenden Sie Yum zum Konfigurieren der lnmp-Umgebung im CentOS7.6-System
  • MySQL 8.0.13 Installations- und Konfigurations-Tutorial unter CentOS7.3
  • Rsync+crontab regelmäßige Synchronisierungssicherung unter centos7
  • Kompilieren und installieren Sie php7 auf CentOS7, um im PHP-FPM-Modus eine Verbindung zu Apache herzustellen
  • Detailliertes Tutorial zur Installation von MySQL 8.0.13 (rpm) auf Centos7
  • Drei Methoden zum Ändern des Hostnamens von Centos7

<<:  Detaillierte Installation und Konfiguration von MySql auf dem Mac

>>:  mysql5.7.18 dekomprimierte Version zum Starten des MySQL-Dienstes

Artikel empfehlen

Zwei Methoden zum Strecken des Hintergrundbilds einer Webseite

Es gibt zwei Lösungen: Eine Möglichkeit ist CSS, b...

Referenz zur MySQL-Optimierungslösung

Probleme, die bei der Optimierung auftreten könne...

Zusammenfassung der Verwendung von MySQL-Datums- und Uhrzeitfunktionen

Dieser Artikel basiert auf MySQL 8.0 Dieser Artik...

Lösen Sie das Problem verstümmelter Daten bei der MySQL-Datenbankmigration

Unter den Anweisungen meines Vorgesetzten übernah...

Einige Einstellungen von Div bezüglich Rahmen und Transparenz

rahmen: Stil = „Rahmenstil: durchgezogen; Rahmenbr...

So ändern Sie das ursprüngliche Passwort von MySQL auf dem MAC

Problembeschreibung: Ich habe einen Mac gekauft u...

JS realisiert die automatische Wiedergabe der Timeline

Vor kurzem habe ich einen solchen Effekt implemen...

Vue implementiert eine kleine Wettervorhersageanwendung

Dies ist eine Website, die ich nachgeahmt habe, a...

Kann Docker das nächste „Linux“ werden?

Das Linux-Betriebssystem hat das Rechenzentrum in...

Diagramm des Tomcat CentOS-Installationsprozesses

Tomcat CentOS-Installation Dieses Installationstu...

So ändern Sie die Ali-Quelle in Ubuntu 20.04

Beachten Sie, dass dieser Artikel Ihnen nicht ein...