Onde o UNIX procura informações de login? Por exemplo, onde encontra o que fazer?

3

Então, tenho estado cada vez mais no meu sistema UNIX, um mac, e queria saber para onde ele vai executar um login. Eu sei onde ele mantém as senhas e tal, mas eu gostaria de ver o script que ele roda no log-in. Eu encontrei /usr/bin/login , mas nem o vim nem o nano mostrarão algo parecido com código (por exemplo, 90% @ símbolos). Então, se esse é o arquivo, como posso lê-lo?

    
por Hovestar 22.03.2013 / 00:07

2 respostas

2

Depende ... se você iniciar um login de console, um programa normalmente chamado getty (no Fedora Linux, agetty(8) ) mostrará o prompt login: , perguntará pelo nome de usuário e passará isso para login(1) , que obtém as informações do usuário, solicita a senha e (se for bem-sucedido) configura o ambiente e inicia um shell para o usuário. O programa de login é bastante padrão, o Linux faz parte do util-linux package . A versão do FreeBSD é aqui (que provavelmente está mais perto do MacOS do que o Versão Linux).

Para um login gráfico, existe um programa de saudação como xdm(1) ou algo mais elaborado como gdm , que faz a maioria dos itens acima, mas inicia uma sessão X com programas predefinidos em execução.

    
por 22.03.2013 / 01:06
1

Como você está executando o Mac OSX, você pode usar o dtrace execsnoop em um terminal para ver todos os comandos executados:

nohup sudo execsnoop -v > /var/tmp/execsnoop.log &

Em seguida, faça logout e login e você verá o que seu sistema operacional está executando.

Você pode modificar este script dtrace para usar rastreio anônimo e, em seguida, ver todos os programas executados enquanto o seu SO está inicializando.

    
por 22.05.2013 / 07:37

Tags