I sistemi unix tradizionali visualizzano /etc/motd
dopo che l'utente è stato autenticato con successo e prima che la shell dell'utente venga richiamata. Sui sistemi moderni, questo viene fatto dal pam_motd
Modulo PAM, che può essere configurato in /etc/pam.conf
o /etc/pam.d/*
per visualizzare un file diverso.
Il server ssh stesso può essere configurato per stampare /etc/motd
se il PrintMotd
l'opzione non è disattivata in /etc/sshd_config
. Potrebbe anche stampare l'ora del login precedente se PrintLastLog
non è disattivato.
Un altro messaggio tradizionale potrebbe dirti se quel You have new mail
o You have mail
. Sui sistemi con PAM, questo viene fatto dal pam_mail
modulo. Alcune shell potrebbero stampare un messaggio sulla posta disponibile.
Dopo l'avvio della shell dell'utente, i file di avvio dell'utente potrebbero stampare messaggi aggiuntivi. Per un login interattivo, se la shell di login dell'utente è una shell in stile Bourne, guarda in /etc/profile
, ~/.profile
, più ~/.bash_profile
e ~/.bash_login
per bash. Per un accesso interattivo a zsh, cerca in /etc/zprofile
, /etc/zlogin
, /etc/zshrc
, ~/.zprofile
, ~/.zlogin
e ~/.zshrc
. Per un accesso interattivo a csh, cerca in /etc/csh.login
e ~/.login
.
Se la shell di login dell'utente è bash e questo è un login non interattivo, allora bash esegue ~/.bashrc
(il che è davvero strano, dal momento che ~/.bashrc
viene eseguito per le shell interattive solo se la shell non è una shell di login). Questo può essere fonte di guai; Consiglio di includere il seguente frammento in cima a ~/.bashrc
per eseguire il salvataggio se la shell non è interattiva:
if [[ $- != *i* ]]; then return; fi
Ce ne sono alcuni:
/etc/motd
/etc/issue
/etc/profile - Could echo the message
/etc/profile.d/* - Would be called from /etc/profile
Inoltre
/etc/bash_bashrc
/etc/.bashrc
/etc/bashrc
$HOME/.profile
$HOME/.bashrc
Potresti anche dover passare attraverso ogni programma che viene chiamato da quegli script perché qualcosa come fortune
potrebbe memorizzare le battute visualizzate in /usr/share
. Per isolarlo puoi fare:
. /etc/profile
. /etc/bash.bashrc
. $HOME/.profile
. $HOME/.bashrc
Su Ubuntu c'è anche file:
/etc/motd.tail
I sistemi più recenti memorizzano i componenti MOTD in /etc/update-motd.d
in modo che possano essere eseguite varie macro per personalizzare il motd per avere informazioni di aggiornamento, avvisi di sistema, ecc. mostrati all'accesso.
Aggiungi la tua personalizzazione come un altro file con priorità da 00
a 99
99-footer
di solito carica /etc/motd.tail
se attaccarlo alla fine è sufficiente e non vuoi usare nessuno dei macro elementi.