Question SSH Login "clear screen" avant que MOTD ne soit affiché


J'essaie d 'effacer le contenu de l' écran avant que le MOTD ne soit affiché, de sorte que lorsque vous ouvrez SSH sur le serveur, l 'en - tête MOTD se trouve en haut de votre écran.

J'ai essayé d'ajouter clear à .bashrc mais il efface également le MOTD.

Exemple: effacez tout ce qui précède le "Bienvenue dans Ubuntu ...."

Screenshot

Question: Comment supprimer tout le contenu avant que le message MOTD ne soit affiché?


3
2018-01-19 21:16


origine




Réponses:


MOTD est affiché par le module d'authentification pam dans les distributions linux modernes, juste après votre connexion. Aucun script utilisateur ne sera exécuté avant cela.

Vous pouvez simplement modifier le fichier motd pour effacer l'écran via les séquences d'échappement du terminal. <esc> [2J <esc> [; H efface l'écran et saute. Ouvrez votre fichier motd avec vim, appuyez sur i (mode insertion), appuyez sur ctrl + v, appuyez sur la touche esc. Vous verrez ^ [. Vous venez de taper le caractère d'échappement ascii 27. Tapez [2J puis ctrl-v esc puis à nouveau puis [; H. Appuyez maintenant sur échap (sans ctrl-v, ceci pour échapper au mode d'insertion en vi), puis appuyez deux fois sur la touche Maj + Z.

Votre écran sera effacé sur tous les terminaux compatibles avec vt100.

Votre autre option est de désactiver motd in pam. Recherchez le fichier pam_motd.so dans le répertoire /etc/pam.d: grep pam_motd /etc/pam.d/*. Très probablement, vous trouverez quelque chose comme

 session    optional   pam_motd.so

Commentez-le avec #. Implémentez votre propre motd (cat le fichier / etc / motd dans le script init de votre choix). Bien sûr maintenant vous pouvez effacer avant le chat.


1
2018-01-19 22:04



donc j'ai juste essayé de modifier mon /etc/motd fichier et ajouté [2J[;H au sommet de celui-ci et il est juste apparu comme texte dans le MOTD. - Jordan Davis
nvrmind je l'ai eu. Merci bon monsieur! - Jordan Davis
Si vous (ou quelqu'un d'autre qui lit ceci) n'aimez pas vim, vous pouvez utiliser: echo -e \\ e [2J \\ e [\; H> motd2 && cat / etc / motd >> motd2 après cela obtenir un nouveau motd2 (avec clearscreen) qui peut être déplacé sur l'original. - goteguru
J'utilise vim donc c'est bon. Une autre question rapide cependant. Puis-je ajouter cela au fichier 00-header afin que les informations "Welcome to Ubuntu ...." et les mises à jour du package ne soient pas effacées? - Jordan Davis
Vous pouvez l'ajouter n'importe où, c'est une séquence d'échappement de terminal. Toutefois, si vous modifiez des fichiers gérés par le système, le gestionnaire de packages peut remplacer votre version ultérieurement. (Je suis gentoo, mais Ubuntu peut vous avertir que je ne sais pas). - goteguru


Modifier (ou créer) votre ~/.ssh/config déposer et ajouter les lignes

PermitLocalCommand yes
LocalCommand /usr/bin/clear

près du sommet Cela court clear sur le client (votre ordinateur local) après une connexion réussie au serveur.


2
2018-01-19 21:58



Je l'aime et aboutira à rien si, mais je gère le serveur de plusieurs utilisateurs, donc j'essaie de l'obtenir pour tout le monde pas nécessairement moi-même. - Jordan Davis