GNU/Linux >> Tutoriels Linux >  >> Linux

Comment configurer /etc/issues pour afficher l'adresse IP pour eth0

Solution 1 :

Sur CentOS 7 et Debian 8 (et peut-être d'autres aussi), ajoutez simplement la ligne suivante à /etc/issue

My IP address: \4

et cela résoudra l'adresse IPv4 de la machine. Si vous avez plusieurs interfaces réseau et que vous souhaitez en choisir une spécifique, vous pouvez la spécifier avec

My IP address: \4{eth0}

Vérifiez man getty pour obtenir une liste des séquences d'échappement prises en charge sur votre distribution.

Solution 2 :

C'est juste un fichier texte ... vous y écrivez de la même manière que vous enverriez du texte dans un fichier avec n'importe quel autre script shell. Quelque chose comme ça remplacerait /etc/issue par juste votre adresse IP :

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

Évidemment, vous pouvez rendre cela arbitrairement plus complexe, en fonction des informations que vous souhaitez dans votre /etc/issue fichier.

Vous pouvez écrire dans ce fichier dans votre équivalent local de /etc/rc.d/rc.local (qui s'exécute généralement après tous les autres scripts de démarrage).

Solution 3 :

Ce script ajoutera/supprimera des adresses IP vers/du /etc/issue fichier au besoin :

#!/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

Si vous utilisez une distribution basée sur Debian, il est préférable de placer le script aux emplacements suivants :

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

De cette façon, les scripts sont exécutés à chaque fois qu'une interface apparaît ou s'arrête. Le placer en /etc/rc.d/rc.local a l'inconvénient de n'être exécuté qu'une seule fois au démarrage.

Solution 4 :

vous pouvez l'écrire une fois. malheureusement, il n'y a pas de séquence d'échappement getty pour afficher l'adresse IP de eth0 mais il existe une séquence d'échappement que vous pouvez utiliser dans /etc/issue pour afficher le nom d'hôte :\n

vous pouvez toujours définir statiquement l'adresse IP de la machine dans /etc/issue en l'écrivant directement dans le fichier. attention, le fichier /etc/issue.net est utilisé pour les connexions à distance, vous pouvez donc également le modifier.

de toute façon, après avoir travaillé dans la fenêtre du terminal, vous perdrez l'écran initial et les informations d'adresse IP/hôte avec. le meilleur moyen est de définir le nom d'hôte dans l'invite (la plupart des distributions Linux le font) en utilisant \h ou \H ou encore, en définissant de manière statique l'adresse IP que vous savez être définie sur l'hôte dans la variable PS1, vous pouvez définir la variable PS1 dans /etc/profile sur la plupart des distributions Linux.

Solution 5 :

Systemd rend cela relativement facile. systemctl edit [email protected] avec un contenu comme :

[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'

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


Linux
  1. Comment modifier les paramètres de fuseau horaire sous Linux ?

  2. Comment Linux gère-t-il plusieurs séparateurs de chemins consécutifs (/home////nom d'utilisateur///fichier) ?

  3. Comment /etc/motd est-il mis à jour ?

  4. CentOS / RHEL :Comment récupérer à partir d'un fichier /etc/passwd supprimé

  5. modifier l'invite de connexion ou l'en-tête (/etc/issue) pour afficher l'adresse IP de la machine

La bonne façon de modifier les fichiers /etc/passwd et /etc/group sous Linux

CentOS / RHEL 7 :Comment récupérer à partir d'une entrée root supprimée dans les fichiers /etc/shadow et/ou /etc/passwd

Comment surveiller les modifications des fichiers /etc/shadow et /etc/passwd avec Auditd ?

Comprendre les fichiers /proc/mounts, /etc/mtab et /proc/partitions

Les sites Web doivent-ils vivre dans /var/ ou /usr/ selon l'utilisation recommandée ?

Dans mon fichier /etc/hosts/ sous Linux/OSX, comment créer un sous-domaine générique ?