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

Detaillierte Erklärung des Json-Formats

Inhaltsverzeichnis Ein JSON basiert auf zwei Stru...

Wissen Sie, wie Sie das Flash-Wmode-Attribut in Webseiten verwenden?

Bei der Webentwicklung kann es vorkommen, dass Fl...

So ändern Sie die inländische Quelle von Ubuntu 20.04 apt

UPD 2020.2.26 Derzeit ist Ubuntu 20.04 LTS noch n...

Befehlscodebeispiele für die Installation und Konfiguration von Docker

Docker-Installation Installieren von Abhängigkeit...

Ein kurzer Vortrag über Responsive Design

1. Was ist Responsive Design? Responsive Design b...

Stellen Sie die Nginx+Flask+Mongo-Anwendung mit Docker bereit

Als Server wird Nginx verwendet, als Datenbankunt...

Lösung für das Problem des Speicherns des Formats in HTML TextArea

Das Format des Textbereichs kann beim Speichern in...

Wie gestaltet man eine Webseite? Wie erstelle ich eine Webseite?

Wenn es um das Verständnis von Webdesign geht, sc...

Eine kurze Diskussion zu this.$store.state.xx.xx in Vue

Inhaltsverzeichnis Sehen Sie sich dies an.$store....

Rankings zur Benutzerfreundlichkeit chinesischer Websites

<br />Die Benutzererfahrung wird von chinesi...

Vue hält den Benutzer angemeldet (verschiedene Token-Speichermethoden)

Inhaltsverzeichnis So setzen Sie Cookies Nachteil...