/etc/issue
/etc/issue - Standard-Issue-Datei
Beschreibung
Falls die Datei existiert, dann prüft agetty auf das Verzeichnis /etc/issue.d
- Das Verzeichnis ist eine optionale Erweiterung zu der Standard-Issue-Datei und der Inhalt des Verzeichnisses wird nach dem Inhalt von /etc/issue ausgegeben
- Falls /etc/issue nicht existiert, wird das Verzeichnis ignoriert
- Alle Dateien mit der Endung .issue aus dem Verzeichnis werden in Versionsreihenfolge angezeigt
- Das Verzeichnis kann zur Verwaltung von Nachrichten dritter Parteien, unabhängig von der primären Datei /etc/issue des Systems, verwendet werden
- Zusätzliche Orte
Seit Version 2.35 werden zusätzliche Orte für Issue-Datei und -Verzeichnis unterstützt
- Falls die standardmäßige Datei /etc/issue nicht existiert, dann prüft agetty, ob die Dateien /run/issue und /run/issue.d vorhanden sind, und danach /usr/lib/issue und /usr/lib/issue.d
- Das Verzeichnis /etc wird als Ort der rechnerspezifischen Konfiguration angenommen, /run für erzeugte Objekte und /usr/lib für die statische, von der Distribution verwaltete Konfiguration
- Standardpfad
Der Standardpfad kann mit der Option --issue-file außer Kraft gesetzt werden
- In diesem Fall muss der festgelegte Pfad eine Datei oder Verzeichnis sein und alle standardmäßigen Orte der Issue-Dateien und -Verzeichnisse werden ignoriert
- Deaktivierung
Die Issue-Datei-Funktionalität kann mit der Option --noissue vollständig deaktiviert werden
- Anzeige
Mit dem Befehl agetty --show-issue können Sie die aktuelle Issue-Datei im aktuellen Terminal anzeigen lassen
Die issue-Dateien können bestimmte Maskierungscodes enthalten, um den Systemnamen, das Datum, die Zeit usw. anzuzeigen
- Alle Maskierungscodes bestehen aus einem Rückwärtsschrägstrich (\), der sofort von einem der unten aufgeführten Zeichen gefolgt wird
Maskierungscodes
Code | Wert | Beschreibung |
---|---|---|
4 | Schnittstelle | Fügt die IPv4-Adresse der angegebenen Netzwerkschnittstelle (beispielsweise \4{eth0}) ein
Schnittstelle (OBEN, keine-SCHLEIFENSCHALTUNG, LAUFEND) ausgewählt
zurückgegriffen |
6 | Schnittstelle | Identisch zu \4, aber für IPv6 |
b | fügt die Baudrate der aktuellen Leitung ein | |
d | fügt das aktuelle Datum ein | |
e | Name | Übersetzt den menschenlesbaren Namen in eine Maskierungssequenz und fügt diese ein (Beispiel: \e{red}Hinweistext.\e{reset})
lightred, magenta, red, reset, reverse, yellow und white
|
s | fügt den Systemnamen (den Namen des Betriebssystems) ein
| |
S | VARIABLE | Fügt die VARIABLEn-Daten aus /etc/os-release hinzu
dann wird PRETTY_NAME aus der Datei oder der Systemname verwendet (siehe \s)
|
l | fügt den Name der aktuellen TTY-Leitung ein | |
m | 'fügt den Architekturkennzeichner der Maschine ein
| |
n | fügt den Knotennamen der Maschine (auch als Rechnername oder Hostname bekannt) ein
| |
o | fügt den NIS-Domain-Namen der Maschine ein
| |
O | fügt den DNS-Domain-Namen der Maschine ein | |
r | fügt die Release-Nummer des Betriebssystems ein
| |
t | fügt die aktuelle Zeit ein | |
u | fügt die Anzahl der aktuell angemeldeten Benutzer ein | |
U | fügt die Zeichenkette 1 user oder <n> users ein, wobei <n> die Anzahl der derzeit angemeldeten Benutzer ist | |
v | fügt die Version des Betriebssystems ein, d. h. das Baudatum usw |
Beispiele
Dies ist \n.\o (\s \m \r) \t
- Ausgabe
Dies ist thingol.orcan.dk (Linux i386 1.1.9) 18:29:30
- Debian
cat /etc/issue
Debian GNU/Linux trixie/sid \n \l
/etc/issue
Der Inhalt dieser Datei wird vor dem Login auf den Bildschirm geschrieben
- Konkret ausgedrückt schreibt der Getty-Prozess, der auf die Eingabe eines Usernamens wartet, den Inhalt dieser Datei auf die Terminalleitung und fordert erst dann zur Eingabe des Usernamens auf
Normalerweise wird diese Datei dazu benutzt, dem User, der sich einloggen will, Informationen über das System zukommen zu lassen
- Typische Einträge in dieser Datei sind einzeilige Meldungen über die verwendete Systemsoftware, etwa
Debian GNU/Linux
Die meisten Gettys sind zusätzlich in der Lage, bestimmte Substitutionen in diese Meldung aufzunehmen, die dann durch reale Werte ersetzt werden
- Normalerweise sind das
\b | Baudrate der Terminalleitung |
\d | Aktuelles Datum |
\s | Systemname (Name des Betriebssystems) |
\l | Name der TTY-Leitung |
\m | Architektur des Systems (z. B. i486) |
\n | Hostname des Rechners |
\o | Domainname des Rechners |
\r | Release-Nummer des Betriebssystems |
\t | Aktuelle Uhrzeit |
\u | Anzahl der eingeloggten User |
\U | Anzahl der eingeloggten User und das Wort User(s) |
\v | Version des Betriebssystems (Build-Date) |
Der Inhalt einer /etc/issue Datei könnte also auch folgendermaßen aussehen
Willkommen bei \n.\o (\s \m \r)
Das würde dann in der Ausgabe etwa folgendermaßen dargestellt werden
Willkommen bei marvin.mydomain.org (Linux i686 2.4.18)
Die Angabe von Datum, Uhrzeit und Anzahl der eingeloggten User ist weniger sinnvoll als auf den ersten Blick zu vermuten wäre
- Die Substitution der Werte findet statt, während getty die Begrüßungsmeldung auf den Schirm schreibt
- Danach findet keine Aktualisierung dieser Werte statt
- Bei einem Server, der Tag und Nacht läuft und auf dessen Terminal sich nur alle paar Wochen jemand einloggt, können diese Werte mehrere Tage alt und damit wenig aussagekräftig sein
TMP
/etc/issue
Alle im folgenden Abschnitt beschriebenen Getty sind in der Lage, vor der Login-Aufforderung eine Mitteilung auf den Bildschirm auszugeben
- Den Text dazu beziehen sie, wenn nicht explizit etwas anderes angegeben wurde, aus der Datei /etc/issue
- In dieser Datei sind verschiedenste Ersatzdarstellungen zulässig, z. B. um den Rechnernamen oder die aktuelle Zeit einzublenden
- Allerdings unterscheiden sich die Gettys hinsichtlich der unterstützten Platzhalter
- Im Falle von mingetty könnte der Inhalt der Datei so aussehen
cat /etc/issue Willkommen auf Rechner \n, System \s Version \r!
Der Willkommensgruß kann diverse Platzhalter umfassen, die den Text in begrenztem Umfang dynamisch anpassen
Parameter | Beschreibung |
---|---|
\b | Fügt die Baudrate der aktuellen Verbindung ein |
\d | Steht für den aktuellen Tag |
\l | Name des Terminals, an dem mingetty aktiv ist |
\m | Architektur des Rechner |
\n | Voller Rechnername (inklusive Domainname) |
\o | Domainname |
\r | Betriebssystemversion (Kernelrelease) |
\s | Betriebssystemname |
\t | Aktuelle Zeit |
\u | Anzahl am System angemeldeter Benutzer |
\v | Betriebssystemversion (Übersetzungszeit des Kernels) |
Der Platzhalter \b wird nur von Gettys verstanden, die auch serielle Schnittstellen überwachen können
Bei Verwendung von fbgetty muss anstatt des Backslashs (\) das Prozentzeichen verwendet werden (%d, %u,...)
- Da fbgetty sich noch in einem frühen Entwicklungsstadium befindet, wird es in der weiteren Diskussion keine Rolle spielen