Die Protokollrotation ist eine sehr gängige Funktion auf Linux-Systemen. Sie behält den erforderlichen Protokollinhalt für die Systemüberwachung und Fehlerbehebung bei und verhindert gleichzeitig, dass zu viele Protokolle dazu führen, dass eine einzelne Protokolldatei zu groß wird. Der Protokollrollvorgang läuft wie folgt ab: Aus einer Gruppe von Protokolldateien wird die Protokolldatei mit der größten Nummer (älteste) gelöscht, die verbleibenden Protokolldateien werden fortlaufend nummeriert und ersetzen die älteren Protokolldateien, und die neuere Datei ersetzt sie als aktuelle Protokolldatei. Dieser Prozess lässt sich problemlos automatisieren und die Details können nach Bedarf feinabgestimmt werden. Verwenden Sie den Befehl Die Beispiele in diesem Artikel gelten für Linux-Systeme wie Ubuntu. Bei anderen Systemtypen können die Protokolldateien und Konfigurationsdateien anders sein, aber der Protokollierungsvorgang ist ähnlich. Warum müssen wir Baumstämme rollen? Normalerweise besteht keine Notwendigkeit, Protokolldateien manuell zu rotieren. Das Linux-System rotiert das Protokoll automatisch jeden zweiten Tag (oder öfter) oder entsprechend der Größe der Protokolldatei. Wenn Sie das Protokoll rotieren müssen, um Speicherplatz freizugeben oder einen Teil des Protokolls von der aktuellen Aktivität zu trennen, ist dies abhängig von den Dateirotationsregeln problemlos möglich. Ein wenig Hintergrund Nach der Installation des Linux-Systems wurden viele Protokolldateien in den Protokollrotationsbereich aufgenommen. Darüber hinaus legen manche Anwendungen bei der Installation auch Rotationsregeln für die von ihnen generierten Protokolldateien fest. Im Allgemeinen wird die Konfigurationsdatei für die Protokollrotation in Beim Protokollrollen wird das aktive Protokoll in einen neuen Namen umbenannt, z. B. „log.1“, und die Datei mit dem vorherigen Namen „log.1“ wird in „log.2“ umbenannt usw. In diesem Dateisatz wird die älteste Protokolldatei (z. B. mit dem Namen log.7) aus dem System gelöscht. Die Dateibenennungsmethode und die Anzahl der bei der Rotation des Protokolls beizubehaltenden Protokolldateien werden durch die Konfigurationsdateien im Verzeichnis Beispielsweise könnte das Syslog nach der Protokollrotation folgendermaßen aussehen (beachten Sie, dass die Kommentare am Ende der Zeile nur zeigen, wie sich der Rotationsprozess auf den Dateinamen auswirkt): $ ls -l /var/log/syslog* -rw-r----- 1 syslog adm 128674 10. März 08:00 /var/log/syslog <== neue Datei -rw-r----- 1 syslog adm 2405968 9. März 16:09 /var/log/syslog.1 <== vorheriges Syslog -rw-r----- 1 syslog adm 206451 9. März 00:00 /var/log/syslog.2.gz <== vorheriges syslog.1 -rw-r----- 1 syslog adm 216852 8. März 00:00 /var/log/syslog.3.gz <== vorheriges syslog.2.gz -rw-r----- 1 syslog adm 212889 7. März 00:00 /var/log/syslog.4.gz <== vorheriges syslog.3.gz -rw-r----- 1 syslog adm 219106 6. März 00:00 /var/log/syslog.5.gz <== vorheriges syslog.4.gz -rw-r----- 1 syslog adm 218596 5. März 00:00 /var/log/syslog.6.gz <== vorheriges syslog.5.gz -rw-r----- 1 syslog adm 211074 4. März 00:00 /var/log/syslog.7.gz <== vorheriges syslog.6.gz Möglicherweise stellen Sie fest, dass mit Ausnahme des aktuell aktiven Protokolls und der zuletzt gerollten Protokolldatei alle anderen Dateien komprimiert wurden, um Speicherplatz zu sparen. Der Grund für dieses Design ist, dass die meisten Systemadministratoren nur die neueste Protokolldatei überprüfen müssen. Die übrigen Protokolldateien sind komprimiert und können bei Bedarf dekomprimiert und überprüft werden. Dies ist ein guter Kompromiss. Manuelle Protokollrotation Sie können den Befehl logrotate ausführen, um die Protokolle manuell zu rotieren:
Erwähnenswert ist, dass der Befehl
Mit den folgenden Befehlen können Sie sicherstellen, dass die Dateieigentümerschaft und Berechtigungen korrekt sind: $ sudo touch /var/log/syslog $ sudo chown syslog:adm /var/log/syslog $ sudo chmod 640 /var/log/syslog Sie können auch die folgende Zeile zu
Der Inhalt der gesamten Konfigurationsdatei ist wie folgt: /var/log/syslog { drehen 7 täglich fehltok Benachrichtigungleer Erstellen Sie 0640 Syslog Adm <== Verzögerungskomprimierung Kompresse nachrotieren /usr/lib/rsyslog/rsyslog-rotate Endskript } Nachfolgend sehen Sie ein Beispiel für das manuelle Scrollen im wtmp-Protokoll, das Benutzeranmeldeinformationen aufzeichnet. Aufgrund der Konfiguration von „Rote 2“ in /etc/logrotate.d/wtmp werden nur zwei Kopien der wtmp-Protokolldateien im System gespeichert. Vor dem Rollen: $ ls -l wtmp* -rw-r----- 1 root utmp 1152 12. März 11:49 wtmp -rw-r----- 1 root utmp 768 11. März 17:04 wtmp.1 Führen Sie den Scroll-Befehl aus:
Nach dem Scrollen: $ ls -l /var/log/wtmp* -rw-r----- 1 root utmp 0 Mär 12 11:52 /var/log/wtmp -rw-r----- 1 root utmp 1152 12. März 11:49 /var/log/wtmp.1 -rw-r----- 1 root adm 99726 Feb 21 07:46 /var/log/wtmp.report Es ist wichtig zu wissen, dass unabhängig davon, ob das Protokollieren automatisch oder manuell erfolgt, der letzte Zeitpunkt des Protokollierens in der $ grep wtmp /var/lib/logrotate/status "/var/log/wtmp" 2020-3-12-11:52:57 Zusammenfassen Dies ist das Ende dieses Artikels über das manuelle Rolling Logs im Linux-System. Weitere relevante Inhalte zum Linux-Rolling Log finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: So beheben Sie den 10060-Unknow-Fehler, wenn Navicat eine Remote-Verbindung zu MySQL herstellt
In diesem Artikel wird kurz beschrieben, wie Sie ...
Hintergrund Kürzlich habe ich während eines Onlin...
Inhaltsverzeichnis Vorwort 1. Binärer Baum 1.1. D...
Erstellen einer Tabelle Tabelle erstellen Bestell...
Inhaltsverzeichnis Grundlegende Konzepte von Dock...
1. Grundlegende Spezifikationen (1) Es muss die I...
Wie unten dargestellt: Führen Sie hauptsächlich A...
Drei nützliche Codes, die Besuchern dabei helfen,...
Mehrere Teile von Compose befassen sich in irgend...
Ernsthafte MySQL-Optimierung! Wenn die MySQL-Date...
React unterscheidet sich von Vue. Es implementier...
Die Beispiele in diesem Artikel laufen auf MySQL ...
Es gibt eine einfache CSS-Methode, um das Popup-F...
Deaktivieren und Aktivieren von MySQL-Fremdschlüs...
<br />Frage: Wie schreibe ich in HTML, um zu...