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

So richten Sie /etc/issues ein, um die IP-Adresse für eth0 anzuzeigen

Lösung 1:

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 diese mit

angeben
My IP address: \4{eth0}

Kreuzen Sie man getty an für eine Liste der von Ihrer Distribution unterstützten Escape-Sequenzen.

Lösung 2:

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).

Lösung 3:

Dieses Skript fügt IP-Adressen zu/von /etc/issue hinzu/entfernt sie Datei nach Bedarf:

#!/bin/sh
PREFIX="Local IP addresses:"
IPADDRS=$(hostname -I | tr " " "\n" | grep -v "^$" | sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tr "\n" " ")

perl -i -p -0777 -e "s/^$PREFIX[^\n]*\n\n//m; s/$/\n$PREFIX $IPADDRS\n/ if length('$IPADDRS')>6" /etc/issue

Wenn Sie eine Debian-basierte Distribution verwenden, platzieren Sie das Skript am besten an diesen Orten:

/etc/network/if-up.d/update-issue
/etc/network/if-post-down.d/update-issue

Auf diese Weise werden die Skripte jedes Mal ausgeführt, wenn eine Schnittstelle hochgefahren oder heruntergefahren wird. Platzieren Sie es in /etc/rc.d/rc.local hat den Nachteil, dass es nur einmal während des Bootvorgangs ausgeführt wird.

Lösung 4:

du kannst es einmal schreiben. Leider gibt es keine getty-Escape-Sequenz, um die IP-Adresse von eth0 anzuzeigen, aber es gibt eine Escape-Sequenz, die Sie in /etc/issue verwenden können, um den Hostnamen anzuzeigen:\n

Sie können die IP der Maschine immer statisch in /etc/issue setzen, indem Sie sie direkt in die Datei schreiben. Beachten Sie, dass die Datei /etc/issue.net für entfernte Anmeldungen verwendet wird, also sollten Sie auch diese bearbeiten.

Wie auch immer, nachdem Sie im Terminalfenster gearbeitet haben, verlieren Sie den Startbildschirm und die IP-/Host-Adressinformationen damit. Der beste Weg ist, den Hostnamen in der Eingabeaufforderung festzulegen (die meisten Linux-Distributionen tun dies) mit \h oder \H oder erneut, indem Sie die IP-Adresse statisch festlegen, von der Sie wissen, dass sie auf dem Host in der PS1-Variablen festgelegt ist. Sie können die PS1-Variable in /etc/profile festlegen auf den meisten Linux-Distributionen.

Lösung 5:

Systemd macht dies relativ einfach. systemctl edit [email protected] mit Inhalten wie:

[Service]
ExecStartPre=-/bin/bash -c '[ ! -f /etc/.issue.orig ] && cp /etc/issue /etc/.issue.orig; int=`ls /sys/class/net|grep enp|head -1`; sed -r "s/\\\\\\n/[\\\\\\4\{$$int\}]/" < /etc/.issue.orig > /etc/issue'

Dann systemctl daemon-reload && systemctl restart [email protected]


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

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

  3. Was ist die Verbindung zwischen den Verzeichnissen /etc/init.d und /etc/rcX.d in Linux?

  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)?

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

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

Wie wird /etc/motd aktualisiert?

CentOS / RHEL 7 :So stellen Sie gelöschte Root-Einträge in /etc/shadow- und/oder /etc/passwd-Dateien wieder her

Wie kann ich die Datei /etc/shadow und /etc/passwd mit Auditd auf Änderungen überwachen?

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