GNU/Linux >> Tutoriels Linux >  >> Linux

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

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}

Pour CentOS 5 avec une IP louée DHCP, vous pouvez utiliser ce script :

$ 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
}

avec un "modèle" de problème comme celui-ci :

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

%INTERFACES%

N'oubliez pas de

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

Le awk commande pour obtenir l'adresse IP actuelle et les remplacer dans le /etc/issue.template Le fichier doit être portable sur les distributions Linux modernes.


Getty ne connaît pas les adresses IP de la machine. Mais cette question a déjà été posée à serverfault. Voici la réponse acceptée :

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

Attention également au fichier /etc/issue.net est utilisé pour les connexions à distance, vous pouvez donc également le modifier.


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

  2. La différence entre ~/.profile, ~/.bashrc, ~/.bash_profile, ~/.gnomerc, /etc/bash_bashrc, /etc/screenrc … ?

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

  4. Commande grpck – Supprimez les entrées corrompues ou en double dans les fichiers /etc/group et /etc/gshadow.

  5. Comment puis-je annuler un chmod sur le répertoire etc?

Comprendre le fichier /etc/passwd

Comprendre le fichier /etc/shadow

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

Comment trouver l'adresse IP d'une machine virtuelle KVM

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

La différence entre /etc/pam.d/login et /etc/pam.d/system-auth ?