Sistemas Unix tradicionais exibem /etc/motd
depois que o usuário é autenticado com êxito e antes que o shell do usuário seja invocado. Em sistemas modernos, isso é feito pelo módulo pam_motd
PAM, que pode ser configurado em /etc/pam.conf
ou /etc/pam.d/*
para exibir um arquivo diferente.
O próprio servidor ssh pode ser configurado para imprimir /etc/motd
se a opção PrintMotd
não estiver desativada em /etc/sshd_config
. Também pode imprimir a hora do login anterior se PrintLastLog
não estiver desativado.
Outra mensagem tradicional pode dizer se You have new mail
ou You have mail
. Em sistemas com o PAM, isso é feito pelo módulo pam_mail
. Alguns shells podem imprimir uma mensagem sobre o correio disponível.
Depois que o shell do usuário é iniciado, os arquivos de inicialização do usuário podem imprimir mensagens adicionais. Para um login interativo, se o shell de login do usuário for um shell estilo Bourne, procure em /etc/profile
, ~/.profile
, além de ~/.bash_profile
e ~/.bash_login
para bash. Para um login interativo em zsh, procure em /etc/zprofile
, /etc/zlogin
, /etc/zshrc
, ~/.zprofile
, ~/.zlogin
e ~/.zshrc
. Para um login interativo em csh, procure em /etc/csh.login
e ~/.login
.
Se o shell de login do usuário é bash e este é um login não interativo, o bash executa ~/.bashrc
(o que é realmente estranho, já que ~/.bashrc
é executado para shells interativos somente se o shell não for um shell de login) . Isso pode ser uma fonte de problemas; Recomendo incluir o seguinte snippet no topo de ~/.bashrc
para salvar se o shell não for interativo:
if [[ $- != *i* ]]; then return; fi