GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Ändern Sie die Anmeldeaufforderung oder den Header (/etc/issue), um die IP-Adresse des Computers anzuzeigen

Unter CentOS 7 und Debian 8 (und vielleicht auch andere), hängen Sie einfach die folgende Zeile an /etc/issue an

My IP address: \4

und das wird in die IPv4-Adresse des Computers aufgelöst. Wenn Sie mehrere Netzwerkschnittstellen haben und eine bestimmte auswählen möchten, können Sie sie mit

angeben
My IP address: \4{eth0}

Für CentOS 5 mit einer per DHCP geleasten IP können Sie dieses Skript verwenden:

$ cat /etc/dhcp/dhclient.d/issue.sh
#!/bin/bash

update_issue() {
    awk -v \
        r="$(ip -o addr | awk '/inet [1-9]+/ { print $2 " " $4 }')" \
        '{ gsub(/%INTERFACES%/,r) }1' \
        /etc/issue.template > /etc/issue
}

issue_config() {
    update_issue
}

issue_restore() {
    update_issue
}

mit einer Problem-"Vorlage" wie dieser:

$ cat /etc/issue.template
CentOS release 6.5 (Final)
Kernel \r on an \m

%INTERFACES%

Denken Sie daran

chmod +x /etc/dhcp/dhclient.d/issue.sh

Die awk Befehl, um die aktuelle IP zu erhalten und sie in /etc/issue.template zu ersetzen Datei sollte auf moderne Linux-Distributionen portierbar sein.


Getty kennt die IP-Adressen der Maschine nicht. Aber diese Frage wurde schon bei serverfault gestellt. Hier ist die akzeptierte Antwort:

Es ist nur eine Textdatei ... Sie schreiben darin genauso, wie Sie mit jedem anderen Shell-Skript Text an eine Datei senden würden. So etwas würde /etc/issue nur durch Ihre IP-Adresse ersetzen:

ifconfig eth0 | awk '/inet addr/ {print $2}' | cut -f2 -d: > /etc/issue

Natürlich können Sie dies beliebig komplexer gestalten, je nachdem, welche Informationen Sie in Ihrem /etc/issue haben möchten Datei.

Sie können in diese Datei in Ihrem lokalen Äquivalent von /etc/rc.d/rc.local schreiben (das normalerweise nach allen anderen Startskripten ausgeführt wird).

Beachten Sie außerdem, dass die Datei /etc/issue.net wird für Remote-Logins verwendet, also sollten Sie das vielleicht auch bearbeiten.


Linux
  1. Eine Einführung in die Linux-Datei /etc/fstab

  2. Der Unterschied zwischen ~/.profile, ~/.bashrc, ~/.bash_profile, ~/.gnomerc, /etc/bash_bashrc, /etc/screenrc …?

  3. Befehl grpck – Entfernen Sie beschädigte oder doppelte Einträge in den Dateien /etc/group und /etc/gshadow.

  4. Wie kann ich ein chmod im etc-Verzeichnis zurücksetzen?

  5. Warum haben die Verzeichnisse /home, /usr, /var usw. alle dieselbe Inode-Nummer (2)?

Verstehen der /etc/passwd-Datei

Verstehen der /etc/shadow-Datei

Der richtige Weg zum Bearbeiten von /etc/passwd- und /etc/group-Dateien unter Linux

So finden Sie die IP-Adresse einer virtuellen KVM-Maschine

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

Der Unterschied zwischen /etc/pam.d/login und /etc/pam.d/system-auth?