/var/log leer

haruchin

New Member
Ich durch einen Tab Fehler mein komplettes /var/log verz. geleert. (kann passieren ;) )
Wie bekomme ich nun wieder hin, das alle installieren Pakete die dort Logs geschrieben habe, diese wieder automatisch anlegen ohne jetzt das System komplett neu zu installieren?

Sys ist Ubuntu Focal

*Edit*
Hat sich wohl erledigt. Habe mir angesehen welche Dateien in /etc/logrotate.d/ vorhanden sind und jeweils die passende verz. per Hand angelegt und die Rechte angepasst.
 
Last edited:

danton

Debian User
Anschließend den Syslog-Daemon und die Dienste, die direkt loggen (wie u.a. Apache oder MySQL) einmal neu startet, damit diese in die neuen Logdateien reinschreiben. Dabei werden auch die Logdateien wieder angelegt, sofern der Dienst die notwendigen Rechte hat.
 

haruchin

New Member
Anschließend den Syslog-Daemon und die Dienste, die direkt loggen (wie u.a. Apache oder MySQL) einmal neu startet, damit diese in die neuen Logdateien reinschreiben. Dabei werden auch die Logdateien wieder angelegt, sofern der Dienst die notwendigen Rechte hat.
Wurde gemacht und alle Logs sind wieder da.

Ein simplet Reboot wäre am Zuverlässigstem und am Schnellsten...
Geht nicht, wenn keine Ordner etc. mehr vorhanden sind. Wurde aber alles per Hand neu angelegt und geht jetzt wieder normal.
 

Joe User

Zentrum der Macht
Selbstverständlich funktioniert ein Reboot ohne Logs und fehlende Logs werden beim (Re)Start automatisch wieder angelegt.

Been there, done that. Multiple times, on different OS (Linux, FreeBSD, Windows, Android, QNX, etc.)...
 

haruchin

New Member
Selbstverständlich funktioniert ein Reboot ohne Logs und fehlende Logs werden beim (Re)Start automatisch wieder angelegt.

Been there, done that. Multiple times, on different OS (Linux, FreeBSD, Windows, Android, QNX, etc.)...
Wie erwähnt, war es leider bei mir nicht der Fall (ginge davon auch aus, mit reboot alle Probleme behoben sind). Aber Problem ist ja gelöst und nächstes mal schaue ich besser 2x hin bevor ich Tab und dann Enter in einem Falschen Verz. drücke :p
 

marce

Well-Known Member
Problem sind eigentlich nur Ordner unterhalb /var/log.

Kommt halt drauf an, wie die Ordner darin "entstehen". Sauber implementierte Programme prüfen und legen die ggf. selbst beim Start neu an, weniger sauber implementierte machen das nur einmalig bei der Installation.

Die Konfig-Files in logrotate.d zu prüfen reicht übrigens daher nicht zwingend aus - wer weiß schon, ob sich da innerhalb der Installation jeder Service verewigt hat...
 

danton

Debian User
Das mit dem automatisch anlegen klappt leider nicht immer, da einige Programme unter einem unpriviligierten User starten und dann nicht die notwendigen Rechte haben, um ein Logfile oder Verzeichnis und /var/log zu erstellen. Dann muss man die Logdatei oder das Verzeichnis, in das diese rein soll, manuell mit den passenden Rechten starten. Bin ich schon selbst drüber gestolpert.
Das Logrotate-Verzeichnis ist ein guter Anlaufpunkt, aber dort stehen nur die Logdateien drin, die Logrotate auch rotiert. Wenn ein Programm sich darum selber kümmert, dann fehlt es logischerweise - das läuft aber auch mit ausreichenden Rechten, um seine Logdatei selber anlegen zu können.
 

DeaD_EyE

Blog Benutzer
Selbstverständlich funktioniert ein Reboot ohne Logs und fehlende Logs werden beim (Re)Start automatisch wieder angelegt.
Unterverzeichnisse werden nicht automatisch angelegt.

Ich weiß das daher, weil ich vor einiger Zeit /var/log nach tmpfs eingehangen habe, um bei dem Raspberry PI die SD-Karte zu schützen (ReadOnly).
Nginx konnte seine Logs z.B. nicht erstellen, da das Verzeichnis fehlte (/var/log war leer) und der Server startet dann auch nicht. Nginx möchte gerne nach /var/log/nginx/ schreiben, setzt aber voraus, dass das Verzeichnis bereits existiert.

Andere Dienste, die einfach nach /var/log sichern, sind davon nicht betroffen.
 
Top