BEZEICHNUNG
journalctl - Abfragen des Systemd-JournalsÜBERSICHT
journalctl
[OPTIONEN…] [ÜBEREINSTIMMUNGEN…]
BESCHREIBUNG
journalctl kann zur Abfrage der Inhalte des Journals von systemd(1) wie von systemd-journald.service(8) geschrieben benutzt werden. Beim Aufruf ohne Parameter wird der gesamte Inhalt des Journals angezeigt, beginnend mit dem ältesten gesammelten Eintrag. Falls ein oder mehrere Übereinstimmungsparameter übergeben werden, wird die Ausgabe entsprechend gefiltert. Eine Übereinstimmung ist in der Form »FELD=Wert«, z.B. »_SYSTEMD_UNIT=httpd.service«, was sich auf strukturierte Journal-Einträge bezieht. Siehe systemd.journal-fields(7) für eine Liste von gut bekannten Feldern. Falls mehrere Übereinstimmungen, die verschiedene Übereinstimmungsfelder angeben, übergeben werden, werden die Protokolleinträge entsprechend aller Felder gefiltert, d.h. die resultierende Ausgabe wird nur Einträge zeigen, die mit allen angegebenen Übereinstimmungen dieser Art übereinstimmen. Falls zwei Übereinstimmungen auf das gleiche Feld angewandt werden, dann werden sie automatisch als Alternativen auf Übereinstimmung geprüft, d.h. die resultierende Ausgabe wird Einträge zeigen, die mit jeder der angegebenen Übereinstimmungen für das gleiche Feld übereinstimmen. Schließlich darf das Zeichen »+« als separates Wort zwischen anderen Ausdrücken auf der Befehlszeile erscheinen. Dies führt dazu, dass alle Übereinstimmungen davor und danach als Disjunktion (d.h. als logisches ODER) verknüpft werden. Es ist auch möglich, die Einträge durch Angabe eines absoluten Dateipfads zu filtern. Der Dateipfad kann eine Datei oder ein symbolischer Link sein und die Datei muss zum Zeitpunkt der Abfrage existieren. Falls sich der Dateipfad auf ein ausführbares Programm bezieht, wird eine »_EXE=«-Übereinstimmung für den kanonisierten Programmpfad zu der Abfrage hinzugefügt. Falls sich ein Dateipfad auf ein ausführbares Skript bezieht, wird eine »_COMM=«-Übereinstimmung für den Skriptpfad zu der Abfrage hinzugefügt. Falls ein Dateipfad sich auf einen Geräteknoten bezieht, wird eine »_KERNEL_DEVICE=«-Übereinstimmung für den Kernelnamen des Gerätes und für jeden seiner Nachkommensgeräte zu der Abfrage hinzugefügt. Symbolische Links werden dereferenziert, Kernelnamen werden synthetisiert und Elterngeräte werden zum Zeitpunkt der Abfrage identifiziert. Im Allgemeinen ist ein Geräteknoten der beste Proxy für ein tatsächliches Gerät, da Protokolleinträge normalerweise keine Felder enthalten, die tatsächliche Geräte identifizieren. Damit die resultierenden Protokolleinträge für das tatsächliche Gerät korrekt sind, muss der relevante Teil der Umgebung zum Zeitpunkt der Protokollierung des Eintrags, insbesondere das dem Geräteknoten entsprechende tatsächliche Gerät, identisch zum Zeitpunkt der Abfrage sein. Da Geräteknoten im Allgemeinen nach Systemneustarts ihre entsprechenden Geräte ändern, führt die Angabe von Geräteknotenpfaden dazu, dass die resultierenden Einträge auf solche des aktuellen Systemstarts begrenzt sind. Mit den Optionen --boot, --unit= usw. können zusätzliche Einschränkungen hinzugefügt werden, um weiter einzuschränken, welche Einträge angezeigt werden (logisches UND). Die Ausgabe wird aus allen zugreifbaren Quellen verschachtelt, unabhängig davon, ob sie rotiert oder momentan geschrieben werden und unabhängig davon, ob sie zu dem System selbst gehören oder zugreifbare Benutzer-Journale sind. Die Option --header kann zur Markierung, welche Dateien angezeigt werden, verwandt werden. Die Gruppe der verwandten Journal-Dateien kann mit den Optionen --user, --system, --directory und --file verändert werden, siehe unten. Allen Benutzern wird Zugriff auf ihre privaten benutzerbezogenen Journale gewährt. Standardmäßig wird allerdings nur Root und Benutzern, die Mitglied ein paar besonderer Gruppen sind, der Zugriff auf das System-Journal und die Journale der anderen Benutzer gewährt. Mitglieder der Gruppen »systemd-journal«, »adm« und »wheel« können alle Journal-Dateien lesen. Beachten Sie, dass die zwei letzten Gruppen traditionell über zusätzliche, von der Distribution festgelegte Privilegien verfügen. Mitglieder der Gruppe »wheel« können oft zusätzliche administrative Aufgaben durchführen. Die Ausgabe wird standardmäßig seitenweise durch less geleitet und lange Zeilen werden auf Bildschirmbreite »abgeschnitten«. Der versteckte Anteil kann mittels der Pfeil-links- und Pfeil-rechts-Tasten betrachtet werden. Seitenweise Anzeige kann deaktiviert werden; siehe die Option --no-pager und den Abschnitt »Umgebungsvariablen« unten. Erfolgt die Ausgabe auf ein TTY, werden die Zeilen entsprechend der Priorität eingefärbt: Zeilen der Stufe ERROR und höher werden rot eingefärbt; Zeilen der Stufe NOTICE und höher werden hervorgehoben; Zeilen der Stufe DEBUG werden in leichtem Grau eingefärbt; andere Zeilen werden normal dargestellt.QUELLOPTIONEN
Die folgenden Optionen steuern, woher Journal-Datensätze gelesen werden: --system, --userZeigt Nachrichten von Systemdiensten und dem
Kernel (mit --system). Zeigt Nachrichten von Diensten des aktuellen
Benutzers (mit --user). Falls keines angegeben ist, werden alle
Nachrichten angezeigt, die der Benutzer sehen kann.
Die Option --user beeinflusst, wie die Argumente --unit gehandhabt
werden. Siehe --unit.
-M, --machine=
Zeigt Nachrichten von einem laufenden lokalen
Container. Geben Sie einen Container-Namen an, zu dem verbunden werden
soll.
-m, --merge
Zeigt Einträge verschachtelt aus allen
verfügbaren Journalen, auch aus fernen.
-D VERZEICHNIS, --directory=VERZEICHNIS
Akzeptiert als Argument einen Verzeichnispfad.
Falls angegeben, wird Journalctl auf dem angegebenen Journal-Verzeichnis
VERZ statt auf den standardmäßigen Laufzeit- und
System-Journal-Pfaden agieren.
--file=GLOB
Akzeptiert als Argument einen Datei-Glob.
Falls angegeben, wird Journalctl auf den angegebenen Dateien, die auf
GLOB passen, statt auf den standardmäßigen Laufzeit- und
System-Journal-Pfaden agieren. Kann mehrfach angegeben werden, dann werden die
Dateien geeignet verschachtelt.
--root=WURZEL
Akzeptiert einen Verzeichnispfad als Argument.
Falls angegeben, wird Journalctl auf Journal-Verzeichnissen und
Katalogdateihierarchien unterhalb des angegebenen Verzeichnisses statt auf dem
Wurzelverzeichnis agieren (z.B. wird --update-catalog
WURZEL/var/lib/systemd/catalog/database erstellen und Journal-Dateien
unterhalb von WURZEL/run/journal/ oder WURZEL/var/log/journal/
werden angezeigt).
--grub-mkimage=ABBILD
Akzeptiert einen Pfad zu einer
Plattenabbilddatei oder einem Blockgerätenamen. Falls angegeben, wird
journalctl auf dem Dateisystem in dem angegebenen Plattenabbild
agieren. Diese Option ist ähnlich zu --root=, agiert aber auf
Dateisystemen, die in Plattenabbildern oder Blockgeräten gespeichert
sind, und stellt daher eine einfache Möglichkeit bereit, Protokolldaten
aus Plattenabbildern zu entnehmen. Das Plattenabbild sollte entweder nur ein
Dateisystem oder eine Reihe von Dateisystemen innerhalb einer
GPT-Partitionstabelle enthalten, die der Spezifikation für
auffindbare Partitionen[1] folgt. Für weitere Informationen
über unterstützte Plattenabbilder, siehe den Schalter von
systemd-nspawn(1) mit dem gleichen Namen.
--namespace=NAMENSRAUM
Akzeptiert eine
Journal-Namensraumkennzeichnungszeichenkette als Argument. Falls nicht
angegeben, werden die für den Vorgabenamensraum gesammelten Daten
angezeigt. Falls angegeben, werden stattdessen die Protokolldaten des
angegebenen Namensraums angezeigt. Falls der Namensraum als »*«
angegeben ist, werden Daten aus allen Namensräumen verschachtelt
angezeigt. Falls der Namensraumkennzeichnung ein »+«
vorangestellt wird, werden die Daten aus den angegebenen Namensräumen
und dem Vorgabenamensraum verschachtelt angezeigt, aber keine weiteren.
Für Details über Journal-Namensräume siehe
systemd-journald.service(8).
FILTEROPTIONEN
Die folgenden Optionen steuern, wie Journal-Datensätze gefiltert werden: -S, --since=, -U, --until=Fängt die Anzeige mit neueren
Einträgen ab dem angegebenen Datum oder älteren Einträgen
bis zum angegebenen Datum an. Datumsangaben sollten vom Format
»2012-10-30 18:17:16« sein. Falls der Zeitanteil weggelassen
wird, wird »00:00:00« angenommen. Falls nur der Sekundenteil
weggelassen wird, wird »:00« angenommen. Falls die
Datumskomponente weggelassen wird, wird der aktuelle Tag angenommen.
Alternativ werden die Zeichenketten »yesterday«,
»today«, »tomorrow« verstanden, die sich auf
00:00:00 gestern, den aktuellen Tag bzw. morgen beziehen. »now«
bezieht sich auf die aktuelle Zeit. Schließlich dürfen relative
Zeiten angegeben werden, denen »-« oder »+«
vorangestellt wird, die sich auf Zeiten vor bzw. nach der aktuellen Zeit
beziehen. Für die komplette Zeit- und Datumsspezifikation siehe
systemd.time(7). Beachten Sie, dass --output=short-full
Zeitstempel ausgibt, die genau diesem Format folgen.
-c, --cursor=
Beginnt die Anzeige von Einträgen ab
dem Ort im Journal, der durch den übergebenen Positionszeiger angegeben
ist.
--after-cursor=
Beginnt die Anzeige von Einträgen ab
dem Ort im Journal nach dem Ort, der durch den übergebenen
Positionszeiger angegeben ist. Der Positionszeiger wird angezeigt, wenn die
Option --show-cursor verwandt wird.
--cursor-file=DATEI
Falls DATEI existiert und einen
Positionszeiger enthält, werden Einträge nach dieser
Position angezeigt. Andernfalls werden die Einträge entsprechend
anderer übergebener Optionen angezeigt. Zum Schluss wird der
Positionszeiger des letzten Eintrages nach DATEI geschrieben. Verwenden
Sie diese Option, um das Journal kontinuierlich durch sequenziellen Aufruf von
journalctl zu lesen.
-b [[Kennung][±Versatz]|all],
--boot [=[Kennung][±Versatz]|all]
Zeigt Nachrichten von einem bestimmten
Systemstart. Dies passt auf »_BOOT_ID=«.
Das Argument darf leer sein, in diesem Fall werden die Protokolle für den
aktuellen Systemstart angezeigt.
Falls die Systemstartkennung weggelassen wird, wird ein positiver Versatz
die Systemstarts, beginnend vom Anfang des Journals, nachschlagen, und ein
Versatz, der kleiner oder gleich Null ist, wird die Systemstarts
beginnend vom Ende des Journals nachschlagen. Daher bedeutet 1 den
ersten im Journal in chronologischer Ordnung gefundenen Systemstart, 2
den zweiten und so weiter, während -0 der neuste Systemstart
ist, -1 der Systemstart vor dem neusten und so weiter. Ein leerer
Versatz ist äquivalent zur Angabe von -0, außer
wenn der aktuelle Systemstart nicht der neuste ist (z.B. da --directory
angegeben wurde, um Protokolle von anderen Maschinen anzusehen).
Falls die 32-Zeichen- Kennung angegeben ist, kann sie optional vom
Versatz gefolgt werden, der den Systemstart relativ zu der angegebenen
Kennung identifiziert. Negative Werte bedeuten vorherige Systemstarts
und positive Werte bedeuten nachfolgende Systemstarts. Falls Versatz
nicht angegeben ist, wird ein Wert Null angenommen und die Protokolle des
durch Kennung angegebenen Systemstarts werden angezeigt.
Das besondere Argument all kann zur Negierung der Wirkung eines
vorhergehenden Einsatzes von -b verwandt werden.
-u, --unit=UNIT|MUSTER
Zeigt Nachrichten für die angegebene
Systemd-Unit UNIT (wie eine Dienste-Unit) oder für alle Units,
die auf MUSTER passen. Falls ein Muster angegeben ist, wird eine Liste
von im Journal gefundenen Unit-Namen mit dem angegebenen Muster verglichen und
alle Treffer werden verwandt. Für jeden Unit-Namen wird ein Treffer zu
der Nachricht aus der Unit (»_SYSTEMD_UNIT= UNIT«),
zusammen mit zusätzlichen Treffern für Nachrichten von Systemd
und Nachrichten über Speicherauszüge, für die angegebene
Unit hinzugefügt. Für »_SYSTEMD_SLICE=
UNIT« wird auch ein Treffer hinzugefügt, so dass alle
Protokolle der Kinder einer Scheibe angezeigt werden, falls die
bereitgestellte UNIT eine systemd.slice(5)-Unit ist.
Mit --user werden alle Argumente --unit konvertiert, so dass sie
auf die Benutzermeldungen passen, als ob sie mit --user-unit festgelegt
worden wären.
Dieser Parameter kann mehrmals angegeben werden.
--user-unit=
Zeigt Nachrichten für die angegebene
Benutzer-Sitzungs-Unit. Dies wird einen Treffer für Nachrichten von der
Unit (»_SYSTEMD_USER_UNIT=« und »_UID=«) und
zusätzliche Treffer für Nachrichten von Sitzungs-Systemds und
Nachrichten über Speicherauszüge für die angegebene Unit
hinzufügen. Für »_SYSTEMD_SLICE= UNIT« wird
auch ein Treffer hinzugefügt, so dass alle Protokolle der Kinder einer
Scheibe angezeigt werden, falls die bereitgestellte UNIT eine
systemd.slice(5)-Unit ist.
Dieser Parameter kann mehrmals angegeben werden.
-t, --identifier=SYSLOG-KENNUNG
Zeigt Nachrichten für den angegebenen
Syslog-Kennzeichner SYSLOG_IDENTIFIER.
Dieser Parameter kann mehrmals angegeben werden.
-p, --priority=
Filtert die Ausgabe nach
Nachrichtenprioritäten oder Prioritätsbereichen. Akzeptiert
entweder eine einzelne numerische oder textuelle Protokollstufe (d.h. zwischen
0/»emerg« und 7/»debug«) oder einen Bereich von
numerischen/textuellen Protokollstufen in der Form VON..BIS. Die
Protokollstufen sind die normalen Syslog-Protokollstufen, wie sie in
syslog(3) dokumentiert sind, d.h. »emerg« (0),
»alert« (1), »crit« (2),
»err« (3), »warning« (4),
»notice« (5), »info« (6),
»debug« (7). Falls eine einzelne Protokollstufe angegeben
ist, werden alle Nachrichten mit dieser Protokollstufe oder einer niedrigeren
(daher wichtigeren) Protokollstufe angezeigt. Falls ein Bereich angegeben ist,
werden alle Nachrichten innerhalb des Bereichs angezeigt,
einschließlich des Start- und des Endwertes des Bereichs. Dies wird
»PRIORITY=«-Treffer für die angegebenen
Prioritäten hinzufügen.
--facility=
Filtert Ausgabe nach Syslog-Einrichtung.
Akzeptiert eine Kommata-getrennte Liste von Nummern oder Einrichtungsnamen.
Die Namen sind die gewöhnlichen, in syslog(3) dokumentierten
Syslog-Einrichtungen. --facility=help kann zur Anzeige einer Liste der
bekannten Einrichtungsnamen verwandt werden; das Programm beendet sich
dann.
-g, --grep=
Filtert die Ausgabe auf Einträge, bei
denen das Feld MESSAGE= auf den angegebenen regulären Ausdruck
passt. PERL-kompatible reguläre Ausdrücke werden verwandt, siehe
pcre2pattern(3) für eine detaillierte Beschreibung der Syntax.
Falls das Muster komplett in Kleinschreibung ist, ist der Abgleich
unabhängig von der Groß-/Kleinschreibung. Andernfalls ist der
Abgleich abhängig von der Groß-/Kleinschreibung. Dies kann mit
der Option --case-sensitive außer Kraft gesetzt werden, siehe
unten.
--case-sensitive[=BOOLEAN]
Macht Musterabgleich abhängig oder
unabhängig von der Groß-/Kleinschreibung.
-k, --dmesg
Zeigt nur Kernelnachrichten. Dies impliziert
-b und fügt die Übereinstimmung
»_TRANSPORT=kernel« hinzu.
AUSGABEOPTIONEN
Die folgenden Optionen steuern, wie Journal-Datensätze dargestellt werden: -o, --output=Steuert die Formatierung der angezeigten
Journal-Einträge. Akzeptiert eine der folgenden Optionen:
short
--output-fields=
Ist die Vorgabe und erstellt eine Ausgabe, die
größtenteils identisch zu der Formatierung klassischer
Syslog-Dateien ist und eine Zeile pro Journal-Eintrag anzeigt.
short-full
Ist sehr ähnlich, zeigt aber
Zeitstempel im Format, das die Optionen --since= und --until=
akzeptieren. Anders als die im Ausgabemodus short gezeigten
Zeitstempelinformationen enthält dieser Modus den Wochentag, das Jahr
und die Zeitzoneninformationen in der Ausgabe und ist unabhängig von
der Locale.
short-iso
Ist sehr ähnlich, zeigt aber ISO
8601-Uhrzeit-Zeitstempel.
short-iso-precise
Wie bei short-iso, enthält aber
komplette Mikrosekundengenauigkeit.
short-precise
Ist sehr ähnlich, zeigt aber klassische
Syslog-Zeitstempel mit voller Mikrosekundengenauigkeit.
short-monotonic
Ist sehr ähnlich, zeigt aber monotone
Zeitstempel statt normaler Uhrzeitzeitstempel.
short-delta
wie bei short-monotonic, enthält
aber den Zeitunterschied zum vorherigen Eintrag. Möglicherweise
unzuverlässige Zeitunterschiede werden mit einem »*«
markiert.
short-unix
Ist sehr ähnlich, zeigt aber die seit
1. Januar 1970 UTC vergangene Zeit statt normaler Uhrzeitzeitstempel
(»UNIX-Zeit«). Die Zeit wird mit Mikrosekundengenauigkeit
angezeigt.
verbose
Zeigt vollstrukturierte
Einträgeelemente mit allen Feldern.
export
Serialisiert das Journal in einen
binären (aber größtenteils textbasierten) Strom, der
für Sicherungen und Netzwerkübertragungen geeignet ist (siehe
Journal-Exportformat[2] für weitere Informationen). Um den
binären Strom wieder in das native Journald-Format zu importieren,
siehe systemd-journal-remote(8).
json
Formatiert Einträge als JSON-Objekte,
getrennt durch Zeilenumbrüche (siehe Journal-JSON-Format[3]
für weitere Informationen). Feldwerte werden im Allgemeinen als
JSON-Zeichenketten kodiert, mit drei Ausnahmen:
Beachten Sie, dass diese Kodierung invertierbar ist (mit der Ausnahme der
Größenbegrenzung).
json-pretty
1.Kodiert Felder, die größer
als 4096 Byte sind, als null-Werte. (Dies kann durch Übergabe
von --all abgeschaltet werden, beachten Sie aber, dass dies sehr lange
JSON-Objekte vorbelegen kann.)
2.Journal-Einträge erlauben nicht
eindeutige Felder innerhalb des gleichen Protokolleintrags. JSON erlaubt keine
uneindeutigen Felder innerhalb von Objekten. Daher wird ein JSON-Array als
Feldwert benutzt, wenn ein nicht eindeutiges Feld angetroffen wird, wobei alle
Feldwerte als Elemente aufgeführt werden.
3.Felder, die nicht darstellbare Zeichen oder
Nicht-UTF8-Zeichen enthalten werden als Arrays kodiert, wobei die rohen Bytes
individuell als vorzeichenlose Zahlen formatiert werden.
Formatiert Einträge als
JSON-Datenstrukturen, aber formatiert sie in mehreren Zeilen, um sie durch
Menschen besser lesbar zu gestalten.
json-sse
Formatiert Einträge als
JSON-Datenstrukturen, aber bricht sie in einem Format um, das für
Server-Sendeereignisse[4] geeignet ist.
json-seq
Formatiert Einträge als
JSON-Datenstrukturen, stellt Ihnen aber einen ASCII-Datensatztrennzeichen
(0x1E) voran und hängt ihnen einen ASCII-Zeilenumbruchzeichen (0x0A)
an, in Übereinstimmung mit der JavaScript-Objektnotation (JSON)
Textsequenzen[5] ("application/json-seq").
cat
Erstellt eine sehr knappe Ausgabe, zeigt nur
die tatsächlichen Nachrichten von jedem Journal-Eintrag ohne Metadaten,
nicht mal einen Zeitstempel. Falls dies mit der Option --output-fields=
kombiniert wird, werden die aufgelisteten Felder für jeden
Protokolldatensatz statt nur die Nachricht ausgegeben.
with-unit
Ähnlich zu short-full, stellt
aber die Unit- und Benutzernamen statt der traditionellen Syslog-Kennzeichner
voran. Bei der Verwendung von vorlagenbasierten Instanzen nützlich, da
es die Argumente in den Unit-Namen einschließt.
Ein Kommata-getrennte Liste von Feldern, die
in der Ausgabe aufgenommen werden soll. Dies hat nur für die
Ausgabemodi, die normalerweise alle Felder anzeigen würden (
verbose, export, json, json-pretty,
json-sse und json-seq), sowie bei cat Wirkung. Für
erstere werden die Felder »__CURSOR«,
»__REALTIME_TIMESTAMP«, »__MONOTONIC_TIMESTAMP«
und »_BOOT_ID« immer ausgegeben.
-n, --lines=
Zeigt die neusten Journal-Einträge und
begrenzt die Anzahl der zu zeigenden Ereignisse. Falls --follow
verwandt wird, ist diese Option impliziert. Das Argument ist eine positive
Ganzzahl oder »all«, um die Zeilenbegrenzung zu deaktivieren.
Der Vorgabewert ist 10, falls kein Argument angegeben wird.
-r, --reverse
Invertiert die Ausgabe, so dass die neusten
Einträge zuerst dargestellt werden.
--show-cursor
Zeigt den Positionszeiger nach dem letzten
Eintrag nach zwei Gedankenstrichen an:
Das Format des Positionszeigers ist privat und kann sich ändern.
--utc
-- cursor: s=0639…
Gibt die Zeit in koordinierter Weltzeit (UTC)
aus.
-x, --catalog
Ergänzt Protokollzeilen mit
Erklärungstext aus dem Nachrichtenkatalog. Wo verfügbar, wird
dies erklärenden Hilfetext zu den Protokollnachrichten in der Ausgabe
hinzufügen. Diese kurzen Hilfetexte werden den Kontext eines Fehlers
oder Protokollereignisses, mögliche Lösungen sowie Verweise auf
Unterstützungsforen, Entwicklerdokumentation und andere relevante
Handbücher enthalten. Beachten Sie, dass nicht für alle
Nachrichten Hilfetexte verfügbar sind, sondern nur für
ausgewählte. Für weitere Informationen über den
Nachrichtenkatalog schauen Sie bitte in die Entwicklerdokumentation
für den Nachrichtenkatalog[6].
Beachten Sie: Wenn Sie die Ausgabe von journalctl an Fehlerberichte
anhängen, verwenden Sie -x nicht.
--no-hostname
Zeigt das Feld »hostname« bei
Protokollnachrichten, die von der lokalen Maschine stammen, nicht an. Dies hat
nur für die Familie short der Ausgabemodi Wirkung (siehe oben).
Hinweis: Diese Option entfernt keine Vorkommen von Rechnernamen aus den
Protokolleinträgen selbst, sie verhindert somit nicht, dass
Rechnernamen in den Protokollen sichtbar werden.
--no-full, --full, -l
Verkürzt Felder, wenn sie nicht in die
verfügbaren Spalten passen. Die Vorgabe ist, volle Felder zu zeigen,
und dem Textanzeigeprogramm, falls eines verwandt wird, zu erlauben, diese
umzubrechen oder abzuschneiden.
Die alten Optionen -l/--full sind nicht mehr nützlich,
außer um --no-full rückgängig zu machen.
-a, --all
Zeigt alle Felder komplett, selbst falls sie
nicht darstellbare Zeichen enthalten oder sehr lang sind.
Standardmäßig werden Felder mit nicht darstellbaren Zeichen als
»blob data« abgekürzt. (Beachten Sie, dass das
Textanzeigeprogramm nicht darstellbare Zeichen wieder maskieren
könnte.)
-f, --follow
Zeigt nur die neusten Journal-Einträge
an und gibt kontinuierlich neue Einträge aus, wenn sie im Journal
auftauchen.
--no-tail
Zeigt alle gespeicherten Ausgabezeilen, selbst
im Folgemodus. Setzt den Effekt von --lines= zurück.
-q, --quiet
Unterdrückt alle informellen
Nachrichten (d.h. "-- Journal begins at …", "-- Reboot
--"), alle Warnungsmeldungen bezüglich nicht zugreifbarer
System-Journale beim Betrieb als normaler Benutzer.
SEITENANZEIGER-STEUEROPTIONEN
Die folgenden Optionen steuern die Unterstützung des Seitenanzeige-Programms: --no-pagerLeitet die Ausgabe nicht an ein
Textanzeigeprogramm weiter.
-e, --pager-end
Springt sofort im implizierten
Textanzeigeprogramm zum Ende des Journals. Dies impliziert -n1000, um
sicherzustellen, dass das Textanzeigeprogramm keine Protokolle von
unbegrenzter Größe puffern wird. Dies kann mit dem expliziten
Schalter -n mit einer anderen numerischen Größe
außer Kraft gesetzt werden, während -nall diese
Begrenzung abschaltet. Beachten Sie, dass diese Option nur vom
Textanzeigeprogramm less(1) unterstützt wird.
SICHERE VORWÄRTSVERSIEGELUNG (FSS)-OPTIONEN
Die folgenden Optionen können zusammen mit dem Befehl --setup-keys (siehe unten) verwandt werden: --interval=Gibt das Änderungsinterval für
die Versiegelungsschlüssel für die Erzeugung eines
FSS-Schlüsselpaars mit --setup-keys an. Kürzere
Intervalle erhöhen den CPU-Verbrauch, kürzen aber auch den
Zeitbereich von nicht nachweisbarer Journal-Änderung.
Standardmäßig 15 Minuten.
--verify-key=
Gibt den
FSS-Überprüfungsschlüssel an, der für die Aktion
--verify verwandt werden soll.
--force
Erzeugt neue FSS-Schlüssel, wenn
--setup-keys übergeben wird und Forward Secure Sealing (FSS)
bereits konfiguriert wurde.
BEFEHLE
Die folgenden Befehle werden verstanden. Falls keiner festgelegt ist, ist die Anzeige von Journal-Datensätzen die Vorgabe. -N, --fieldsGibt alle derzeit in allen Einträgen
des Journals verwandten Feldnamen aus.
-F, --field=
Gibt alle möglichen Datenwerte aus, die
das angegebene Feld in allen Einträgen des Journals akzeptiert.
--list-boots
Zeigt eine tabellarische Liste von
Systemstartnummern (relativ zum aktuellen Systemstart), ihre Kennungen und die
Zeitstempel der ersten und letzten zu dem Systemstart zugehörigen
Meldung.
--disk-usage
Zeigt den aktuellen Plattenplatzverbrauch
aller Journal-Dateien an. Dies zeigt die Summe der
Plattenplatzverbräuche aller archivierten und aktiven
Journal-Dateien.
--vacuum-size=, --vacuum-time=, --vacuum-files=
Entfernt die ältesten archivierten
Journal-Dateien, bis der Plattenplatz, den sie verwenden, unter die angegebene
Größe fällt (mit den üblichen Endungen
»K«, »M«, »G« und »T«)
oder alle archivierten Journal-Dateien, die keine Daten älter als die
angegebene Zeitspanne (mit den üblichen Endungen »s«,
»m«, »h«, »days«,
»months«, »weeks« und »years«
angegeben) enthalten oder so dass nicht mehr als die angegebene Anzahl an
separaten Journal-Dateien verbleiben. Beachten Sie, dass die Ausführung
von --vacuum-size= nur einen indirekten Effekt auf die durch
--disk-usage angezeigte Ausgabe hat, da letztere die aktiven
Journal-Dateien einbezieht, während die Bereinigungsaktion nur auf
archivierten Journal-Dateien agiert. Ähnlich könnte
--vacuum-files= die Anzahl der Journal-Dateien nicht unterhalb der
angegebenen Anzahl reduzieren, da es keine aktiven Journal-Dateien entfernen
wird.
--vacuum-size=, --vacuum-time= und --vacuum-files=
können in einem einzelnen Aufruf kombiniert werden, um eine Kombination
einer Größen-, einer Zeit- und eine Anzahl von
Dateien-Beschränkung von archivierten Journal-Dateien zu erzwingen.
Wird einer dieser drei Parameter als Null angegeben, dann ist das
äquivalent dazu, die angegebene Begrenzung nicht zu erzwingen und daher
redundant.
Diese drei Schalter können auch mit --rotate in einem Befehl
kombiniert werden. Falls das passiert, werden alle aktiven Dateien zuerst
rotiert und dann wird direkt danach die erwünschte Bereinigungsaktion
ausgeführt. Die Rotation hat den Effekt, dass alle derzeit aktiven
Dateien archiviert werden (und möglicherweise neue, leere
Journal-Dateien als Ersatz geöffnet werden) und daher die
Bereinigungsaktion die größtmögliche Wirkung hat, da sie
alle bisher geschriebenen Protokolldaten berücksichtigen kann.
--verify
Prüft die Journal-Dateien auf interne
Konsistenz. Falls die Datei mit aktiviertem FSS erstellt wurde und der
FSS-Überprüfungsschlüssel mit --verify-key=
angegeben wurde, wird die Echtheit der Journal-Datei
überprüft.
--sync
Bittet den Journal-Daemon, alle noch nicht
geschriebenen Journal-Daten in das zugrundeliegende Dateisystem zu schreiben
und alle Journale zu synchronisieren. Dieser Aufruf kehrt erst zurück,
wenn die Synchronisationsaktion abgeschlossen ist. Dieser Befehl garantiert,
dass alle Protokollnachrichten, die vor seinem Aufruf geschrieben wurden,
sicher zu dem Zeitpunkt auf Platte gespeichert sind, zu dem er
zurückkehrt.
--relinquish-var
Bittet den Journal-Daemon um die
entgegengesetzte Aktion zu --flush: falls erbeten, wird der Daemon
weitere Protokolldaten nach /run/log/journal/ schreiben und Schreiben nach
/var/log/journal/ beenden. Ein nachfolgender Aufruf von --flush
führt dazu, dass die Protokollierausgabe wieder nach /var/log/journal/
zurückgewechselt wird, siehe oben.
--smart-relinquish-var
Ähnlich zu --relinquish-var,
führt aber keine Aktion durch, falls sich das Wurzeldateisystem und
/var/lib/journal/ auf der gleichen Partition befinden. Diese Aktion erfolgt
während des Systemherunterfahrens, um den Journal-Daemon zum Beenden
des Schreibens nach /var/log/journal/ zu bekommen, falls sich das Verzeichnis
auf einem Einhängepunkt befindet, der ausgehängt werden
muss.
--flush
Bittet den Journal-Daemon, alle in
/run/log/journal/ gespeicherten Protokolldaten nach /var/log/journal/
herauszuschieben, falls dauerhafter Speicher aktiviert ist. Dieser Aufruf
kehrt erst zurück, wenn die Aktion abgeschlossen ist. Beachten Sie,
dass dieser Aufruf idempotent ist: die Daten werden nur einmal zur
Systemlaufzeit von /run/log/journal/ nach /var/log/journal/ rausgeschrieben
(siehe aber auch --relinquish-var unten) und dieser Befehl beendet sich
sauber ohne Ausführung einer Aktion, falls das bereits geschehen ist.
Dieser Befehl garantiert wirksam, dass alle Daten zu dem Zeitpunkt nach
/var/log/journal/ rausgeschoben wurden, zu dem er zurückkehrt.
--rotate
Bittet den Journal-Daemon, die Journal-Dateien
zu rotieren. Dieser Aufruf kehrt erst zurück, wenn die Rotationsaktion
abgeschlossen ist. Journal-Dateien-Rotation hat den Effekt, dass alle derzeit
aktiven Journal-Dateien als archiviert markiert und umbenannt werden, so dass
in der Zukunft niemals mehr in sie geschrieben wird. Dann werden stattdesse
neue (leere) Journal-Dateien erstellt. Diese Aktion kann mit
--vacuum-size=, --vacuum-time= und --vacuum-file= in
einen einzigen Befehl kombiniert werden, siehe oben.
--header
Zeigt anstatt Inhalte das Journals interne
Kopfzeileninformationen von den Journal-Feldern, auf die zugegriffen wird, an.
Diese Option ist insbesondere nützlich, um nicht sortierte
Journal-Einträge zu identifizieren, was beispielsweise passiert, wenn
die Maschine mit der falschen Systemzeit startet.
--list-catalog [128-Bit-Kennung…]
Listet die Inhalte der Nachrichtenkataloge als
Tabelle von Nachrichtenkennungen plus ihrer kurzen Beschreibungszeichenketten
auf.
Zeigt nur diese Einträge an, falls irgendeine 128-Bit-Kennung
angegeben ist.
--dump-catalog [128-Bit-Kennung…]
Zeigt die Inhalte des Nachrichtenkatalogs an,
wobei Einträge durch eine Zeile, die aus zwei Gedankenstrichen und der
Kennung besteht, getrennt werden (das Format ist das gleiche wie bei
.catalog-Dateien).
Zeigt nur diese Einträge an, falls irgendeine 128-Bit-Kennung
angegeben ist.
--update-catalog
Aktualisiert den Nachrichtenkatalogindex.
Dieser Befehl muss jedes Mal ausgeführt werden, wenn neue
Katalogdateien installiert, entfernt oder aktualisiert werden, um den
binären Katalogindex neu zu bauen.
--setup-keys
Erstellt ein neues Schlüsselpaar
für Forward Secure Sealing (FSS), anstatt die Journal-Inhalte
anzuzeigen. Dies erstellt einen Versiegelungsschlüssel und einen
Überprüfungsschlüssel. Der Versiegelungsschlüssel
wird im Journal-Datenverzeichnis gespeichert und verbleibt auf dem Rechner.
Der Überprüfungsschlüssel sollte extern gespeichert
werden. Lesen Sie die Option Seal= in journald.conf(5)
für Informationen über Forward Secure Sealing und für
eine Referenz auf eine wissenschaftliche Veröffentlichung, die Details
über die ihr zugrundeliegende kryptographische Theorie darstellt.
-h, --help
Zeigt einen kurzen Hilfetext an und beendet
das Programm.
--version
Zeigt eine kurze Versionszeichenkette an und
beendet das Programm.
EXIT-STATUS
Im Erfolgsfall wird 0 zurückgeliefert; andernfalls wird ein von Null verschiedener Code zurückgeliefert.UMGEBUNGSVARIABLEN
$SYSTEMD_LOG_LEVELDie maximale Protokollierstufe ausgesandter
Nachrichten (Nachrichten mit einer höheren Protokollierstufe, d.h.
weniger wichtige, werden unterdrückt). Sie muss (in absteigender
Reihenfolge) entweder alert, crit, err, warning,
notice, info, debug oder eine Ganzzahl im Bereich
0…7 sein. Siehe syslog(3) für weitere
Informationen.
$SYSTEMD_LOG_COLOR
Ein logischer Wert. Falls wahr, werden auf das
TTY geschriebene Nachrichten gemäß ihrer Priorität
eingefärbt.
Diese Einstellung ist nur nützlich, falls die Nachrichten direkt auf das
Terminal geschrieben werden, da und andere Werkzeuge, die
Protokolle anzeigen, selbständig Nachrichten gemäß ihrer
Protokollierungsstufe einfärben.
$SYSTEMD_LOG_TIME
Ein logischer Wert. Falls wahr, wird den
Protokollnachrichten der Konsole ein Zeitstempel vorangestellt.
Diese Einstellung ist nur nützlich, falls die Nachrichten direkt auf das
Terminal oder in eine Datei geschrieben werden, da und
andere Werkzeuge, die Protokolle anzeigen, selbständig Zeitstempel
basierend auf ihren Metadaten den Nachrichten anhängen werden.
$SYSTEMD_LOG_LOCATION
Ein logischer Wert. Falls wahr, wird den
Protokollnachrichten ein Dateinamen und eine Zeilenummer in dem Quellcode, aus
dem die Nachrichten stammen, vorangestellt.
Beachten Sie, dass der Protokollierort sowieso oft als Metadaten zu den
Journal-Einträgen angehängt ist. Die Aufnahme in den
Nachrichtentext kann bei der Fehlersuche in Programmen dennoch praktisch
sein.
$SYSTEMD_LOG_TID
Ein logischer Wert. Falls wahr, wird den
Nachrichten die aktuelle numerische Thread-Kennung (TID) vorangestellt.
Beachten Sie, dass diese Informationen sowieso als Metadatan an
Journal-Einträge angehängt wird. Die Aufnahme direkt im
Nachrichtentext kann aber trotzdem bei der Fehlersuche in Programmen praktisch
sein.
$SYSTEMD_LOG_TARGET
Das Ziel für Protokolliernachrichten.
Entweder console (auf das angehängte TTY protokollieren),
console-prefixed (auf das angehängte TTY protokollieren, aber
die Protokollierstufe und »Einrichtung« voranstellen, siehe
syslog(3)), kmsg (in den zirkulären
Kernel-Protokollpuffer protokollieren), journal (in das Journal
protokollieren ( journal-or-kmsg (in das Journal protokollieren, falls
verfügbar, und andernfalls nach Kmsg), auto (das geeignete
Protokollierziel automatisch ermitteln, die Vorgabe) oder null (die
Protokollierung deaktivieren).
$SYSTEMD_PAGER
Zu verwendendes Textanzeigeprogramm, wenn
--no-pager nicht angegeben ist; setzt $PAGER außer Kraft.
Falls weder $SYSTEMD_PAGER noch $PAGER gesetzt sind, wird eine
Reihe wohlbekannter Textanzeigeprogrammimplementierungen der Reihe nach
ausprobiert, einschließlich less(1) und more(1), bis
eines gefunden wird. Falls keine Textanzeigeprogrammimplementierung gefunden
wird, wird keines aufgerufen. Setzen der Umgebungsvariablen auf die leere
Zeichenkette oder den Wert »cat« ist äquivalent zur
Übergabe von --no-pager.
Beachten Sie: Falls $SYSTEMD_PAGERSECURE nicht gesetzt ist, dann wird
$SYSTEMD_PAGER (sowie $PAGER) ohne Rückmeldung
ignoriert.
$SYSTEMD_LESS
Setzt die an less übergebenen
Optionen (standardmäßig »FRSXMK«) außer
Kraft.
Benutzer könnten insbesondere zwei Optionen ändern wollen:
K
Siehe less(1) für weitere Ausführungen.
$SYSTEMD_LESSCHARSET
Diese Option weist das Textanzeigeprogramm an,
sich sofort beim Druck von Strg-C zu beenden. Um less die Handhabung
von Strg-C selbst zum Umschalten auf die Eingabeaufforderung zu erlauben,
setzen Sie diese Option zurück.
Falls der Wert von $SYSTEMD_LESS kein »K« enthält
und less das aufgerufene Textanzeigeprogramm ist, wird Strg+C durch das
Programm ignoriert und muss durch das Textanzeigeprogramm selbst gehandhabt
werden.
X
Diese Option weist das Textanzeigeprogramm an,
keine Termcap-Initialisierungs- und -Deinitalisierungszeichenketten an das
Terminal zu senden. Dies ist standardmäßig gesetzt, damit die
Darstellung von Befehlen selbst nach dem Beenden des Textanzeigeprogramms
sichtbar bleibt. Allerdings stehen dadurch einige Funktionen des
Textanzeigeprogramms nicht zur Verfügung; insbesondere ist das Scrollen
in der Ausgabe mit der Maus nicht möglich.
Setzt den an less zu
übergebenden Zeichensatz (standardmäßig
»utf-8«, falls das aufrufende Terminal als UTF-8-kompatibel
erkannt wurde) außer Kraft.
$SYSTEMD_PAGERSECURE
Akzeptiert einen logischen Wert. Wenn wahr,
wird der »sichere« Modus des Seitenanzeigeprogramms verwandt,
falls falsch, wird dieser deaktiviert. Falls $SYSTEMD_PAGERSECURE
überhaupt nicht gesetzt ist, dann wird der sichere Modus aktiviert,
falls die effektive Kennung nicht identisch zu dem Eigentümer der
Anmeldesitzung ist, siehe geteuid(2) und
sd_pid_get_owner_uid(3). Im sicheren Modus wird LESSSECURE=1
beim Aufruf des Seitenanzeigeprogramms gesetzt und das Seitenanzeigeprogramm
muss Befehle deaktivieren, die neue Dateien öffnen oder erstellen oder
die einen neuen Unterprozess starten. Falls $SYSTEMD_PAGERSECURE
überhaupt nicht gesetzt ist, werden Seitenanzeigeprogramme, bei denen
unbekannt ist, ob sie einen sicheren Modus implementieren, nicht verwandt.
(Derzeit implementiert nur less(1) einen sicheren Modus.)
Hinweis: Wenn Befehle mit erhöhten Rechten ausgeführt werden,
beispielsweise mittels sudo(8) oder pkexec(1), muss Vorsicht
walten gelassen werden, um sicherzustellen, dass keine ungeplanten
interaktiven Funktionalitäten aktiviert werden. Der
»sichere« Modus für das Seitenanzeigeprogramm kann wie
oben beschrieben automatisch aktiviert werden. Durch Setzen von
SYSTEMD_PAGERSECURE=0 oder durch Nichtenfernen dieser Einstellung aus
der ererbten Umgebung wird es dem Benutzer ermöglicht, beliebige
Befehle auszuführen. Beachten Sie, dass auch
$SYSTEMD_PAGERSECURE gesetzt werden muss, falls die Variablen
$SYSTEMD_PAGER oder $PAGER berücksichtigt werden sollen.
Es kann sinnvoll sein, stattdessen den Seitenanzeiger komplett mit
--no-pager zu deaktivieren.
$SYSTEMD_COLORS
Akzeptiert ein logisches Argument. Wenn wahr,
werden systemd und verwandte Hilfswerkzeuge Farben in ihrer Ausgabe
verwenden, andernfalls wird die Ausgabe einfarbig sein. Zusätzlich kann
die Variable eine der folgenden besonderen Werte annehmen: »16«,
»256«, um die Verwendung von Farbe auf die grundlegenden 16 bzw.
256 ANSI-Farben zu beschränken. Dies kann festgelegt werden, um die auf
$TERM und der vorliegenden Verbindung der Konsole basierende
automatische Entscheidung außer Kraft zu setzen.
$SYSTEMD_URLIFY
Dies muss ein logischer Wert sein. Er steuert,
ob anklickbare Links für Terminal-Emulatoren, die dies
unterstützen, erstellt werden sollen. Dies kann angegeben werden, um
die Entscheidung, die systemd basierend auf $TERM und anderen
Bedingungen trifft, außer Kraft zu setzen.
BEISPIELE
Ohne Argumente werden alle gesammelten Protokolle ungefiltert angezeigt:journalctl
journalctl _SYSTEMD_UNIT=avahi-daemon.service journalctl _SYSTEMD_CGROUP=/user.slice/user-42.slice/session-c1.scope
journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097
journalctl _SYSTEMD_UNIT=avahi-daemon.service _SYSTEMD_UNIT=dbus.service
journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097 + _SYSTEMD_UNIT=dbus.service
_SYSTEMD_UNIT= Name.service + UNIT= Name.service _PID=1 + OBJECT_SYSTEMD_UNIT= Name.service _UID=0 + COREDUMP_UNIT= Name.service _UID=0 MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1
journalctl /usr/bin/dbus-daemon
journalctl -k -b -1
journalctl -f -u apache
SIEHE AUCH
systemd(1), systemd-journald.service(8), systemctl(1), coredumpctl(1), systemd.journal-fields(7), journald.conf(5), systemd.time(7), systemd-journal-remote.service(8), systemd-journal-upload.service(8)ANMERKUNGEN
- 1.
- Spezifikation für auffindbare Partitionen
- 2.
- Journal-Exportformat
- 3.
- Journal-JSON-Format
- 4.
- Server-gesandte Ereignisse
- 5.
- JavaScript-Objektnotation (JSON) Textsequenzen
- 6.
- Entwicklerdokumentation für den Nachrichtenkatalog
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <[email protected]> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzersystemd 252 |