Entendo que quando um usuário faz login remotamente no Unix, primeiro um processo getty é iniciado. Se a autenticação for bem-sucedida, etc/environement será chamado. Porém, não entendo quando csh.cshrc e csh.login são chamados durante esse processo?
Responder1
csh.cshrc
e csh.login
são versões globais do ~/.cshrc
e ~/.login
(ou ~/.csh_login
), por exemplo, arquivos de configuração do csh. Quando csh é executado, ele lê ambos /etc/csh.cshrc
e ~/.cshrc
(também lê ambos os arquivos cshlogin). Quando o usuário não possui ~/.cshrc
seu diretório inicial, csh só pode ler arquivos /etc/csh.cshrc
. Esse é o caso porque então o root (ou alguém com, por exemplo, direitos sudo corretos) pode definir /etc/csh.cshrc
para conter as configurações básicas e cada usuário pode personalizar suas próprias configurações em ~/.cshrc
.
Responder2
De man csh
:
An instance of csh begins by executing commands from the file
/etc/csh.cshrc and, if this is a login shell, /etc/csh.login. It then
executes commands from .cshrc in the home directory of the invoker, and,
if this is a login shell, the file .login in the same location. It is
typical for users on CRTs to put the command stty crt in their .login
file, and to also invoke tset(1) there.