
Ich habe einen Ubuntu 14.04 Server (von einem Ubuntu 12.04 Server) eingerichtet, wollte heute aber nachsehen, auth.log
aber diese Datei wird nicht verwendet. Es scheint, dass ´syslog´ gelöscht wurde.
Wie loggt sich Ubuntu 14.04 ein? Ich brauche das für einen Server.
Danke schön.
Antwort1
14.04 verwendet rsyslog
. Als ich von 12.04 auf 14.04 aktualisiert habe, musste ich den Besitzer der Protokolldateien von /var/log
in root
ändern syslog
.
(In /etc/rsyslog.conf
der Eigentümer ist definiert als
$FileOwner syslog
$FileGroup adm
)
Sie sollten auch nachsehen, /etc/rsyslog.d/50-default.conf
wo definiert ist, welche Ereignisse in welche Dateien protokolliert werden. Dort gibt es auch eine Zeile für /var/log/syslog
. Möglicherweise ist diese auskommentiert.
Antwort2
Ich habe gerade eine brandneue Installation von Ubuntu 14.04 mit dem offiziellen Servermedium durchgeführt.
Rsyslog wurde installiert und eine auth.log
gültige Logdatei mit der Standardkonfiguration. Sie wird durch die Datei/etc/rsyslog.d/50-default.conf
Wenn Sie kein Auth.log haben, muss ich davon ausgehen, dass Sie einen der folgenden Schritte ausgeführt haben:
- habe die Konfiguration geändert
- einen anderen Syslog-Daemon als rsyslog verwendet
- habe ein Ubuntu-Installationsprogramm verwendet, das andere Standardeinstellungen festgelegt hat.
Ohne genau zu wissen, welchen Syslog-Daemon Sie verwenden, ist dies schwer zu sagen.
Wenn Sie rsyslog verwenden, sehen Sie sich Ihr /etc/rsyslog.conf
und alle darin enthaltenen Dateien an /etc/rsyslog.d
. Sehen Sie nach, wo die auth,authpriv.*-Meldungen protokolliert werden.
Antwort3
Wenn Sie eine letzte Nachricht wie diese finden in /var/log/syslog
:
Dec 29 19:27:32 host rsyslogd-2039:
Could no open output pipe '/dev/xconsole':
No such file or directory [try http://www.rsyslog.com/e/2039 ]
dann ist das der Übeltäter. Das liegt daran, dass die Standardversion von /etc/rsyslog.d/50-default.conf
Ubuntu 14.04.1 LTS (oder zumindest eine frühere Version, die in Upgrades beibehalten wird) erwartet, dass Sie /dev/xconsole
zur Fehlerüberwachung verwenden, aber das ist in Headless-Serverumgebungen einfach nicht verfügbar.
Um dies zu beheben, deaktivieren Sie den entsprechenden Abschnitt in /etc/rsyslog.d/50-default.conf
, sodass es folgendermaßen aussieht:
# daemon.*;mail.*;\
# news.err;\
# *.=debug;*.=info;\
# *.=notice;*.=warn |/dev/xconsole
Starten Sie dann rsyslog ( sudo service rsyslog restart
) neu und die Protokolldateien sollten jetzt funktionieren.
Quelle:diese Antwortzur AskUbuntu SE-Frage "Fehlendes /dev/xconsole führt zum Stoppen von rsyslog und allen anderen Diensten".
Antwort4
Dieses Problem trat bei mir auf, als ich ein brandneues Ubuntu 14.04 installierte und fail2ban
SSH-Anmeldungen aktivierte.
Ubuntu 14.04 verwendet rsyslog
mit Standardbenutzer syslog
und -gruppe adm
. Das /var/log
Verzeichnis verfügt jedoch über Berechtigungen root:root 0755
, was bedeutet, dass rsyslog im Verzeichnis keine neue Protokolldatei wie die /var/log/auth.log
Datei erstellen kann.
Es gibt mehrere Möglichkeiten, dieses Problem zu lösen.
/var/log/
Für alle Benutzer beschreibbar machen
sudo chmod 0777 /var/log
Ändern Sie den Besitzer/die Gruppe von/var/log
sudo chown syslog:adm /var/log
sudo chmod 0775 /var/log
Berühren Sie /var/log/auth.log
und ändern Sie den Besitzer/die Gruppe insyslog:adm
sudo touch /var/log/auth.log
sudo chown syslog:syslog /var/log/auth.log
Benutzer/Gruppe ändern rsyslog
, unter der ausgeführt wird (nicht empfohlen)
editor /etc/rsyslog.conf
$FileOwner root
$FileGroup root