Levando em consideração que o arquivo passwd é visível por todos os
usuários,
seria mais fácil de ele descobrir essa armadilha se usasse esse arquivo.

Embora a solução com o passwd funcione, eu ainda optaria pera solução com o
exec.

Abraços,

2009/11/16 Daniel Carlos <daniel.car...@gmail.com>

>
>
> Olá Marcus,
>
> A solução com o exec é interessante, mas você poderia ter resolvido o seu
> problema simplesmente definindo no passwd que o shell do seu usuário é o seu
> script. Dessa forma, assim que ele logasse, o seu script seria executado e o
> usuário não teria um shell disponível ao cancelar a execução do script.
>
> Abraços,
>
> Daniel Carlos
> RHCE, LPIC-3
>
>
> 2009/11/14 Marcus Thiago Lages Duarte <marcus_rj...@yahoo.com.br>
>
>
>>
>> Excelente explicacao do conrado. Acrescentando um exemplo prático do
>> comando exec que me foi extremamente útil há um tempo atrás.
>>
>> Eu precisava colocar um usuário dentro de um script interativo ao fazer
>> logon via ssh, após terminar o script o usuário era desconectado da sessao.
>> O usuário não poderia em momento algum ter acesso ao shell, so deveria
>> executar o script e sair.
>> Beleza, coloquei o script dentro do .bashrc para executar no logon, so que
>> tinha um detalhe, o usuário poderia apertar control-c a qualquer momento e
>> sair do script e com isso ter acesso ao shell, o que eu realmente nao
>> queria.
>> Solução? coloquei o script utilizando o exec antes. Tipo -> exec
>> /bin/myscript. Pronto! Agora caso o usuário fosse espertinho e digitasse
>> control-c ele simplesmente era expulso do logon, já que meu script com o
>> "exec" na frente deixou de ser um processo filho do bash, mas passou a ser o
>> real (único) shell do usuário.
>>
>> Abs!
>>
>> --- Em *qua, 11/11/09, Conrado Pinto Rebessi 
>> <conradopi...@gmail.com>*escreveu:
>>
>>
>> De: Conrado Pinto Rebessi <conradopi...@gmail.com>
>> Assunto: Re: [lpi] comado exec
>> Para: lpi@yahoogrupos.com.br
>> Data: Quarta-feira, 11 de Novembro de 2009, 22:58
>>
>>
>>
>> Da pagina de manual do bash(1), lah pela linha 3150...
>>
>> exec [-cl] [-a name] [command [arguments]]
>>               If  command  is  specified,  it  replaces  the shell.  No
>> new process is created
>> traduzindo: Se um comando é especificado, ele toma o lugar do shell. Não é
>> criado um novo processo.
>> Basicamente, vc tem q pensar em gerencia de processos. O normal, qdo vc
>> chama um comando, o kernel "forka" (termo bonito, nao?) um novo processo, ou
>> seja, o bash q vc tava usando continua existindo e eh criado um novo
>> processo. Qdo vc usa o exec, o processo q vc chamou toma o lugar do bash.
>>
>> Olha o exemplo:
>>
>> Sem exec:
>> $ pstree -p | grep -B 1 pstree
>>                         |-bash(5593) -+-bash(5620)
>>                         |            `-pstree(5619)
>> conr...@conrado- tablet:~$ ksh
>> $ pstree -p | grep -B 1 pstree
>>                         |-bash(5593) ---ksh(5621) -+-grep(5623)
>>                         |                        `-pstree(5622)
>>
>> Com exec:
>> $ pstree -p | grep -B 1 pstree
>>                         |-bash(5563) -+-grep(5581)
>>                         |            `-pstree(5580)
>> $ exec ksh
>> $ pstree -p | grep -B 1 pstree
>>                         |-ksh(5563)- +-grep(5584)
>>                         |           `-pstree(5583)
>>
>>
>> Ajudei?
>>
>> []'s
>>
>> Conrado
>>
>> 2009/11/10 Wairisson <wgom...@yahoo. 
>> com.br<http://mc/compose?to=wgom...@yahoo.com.br>
>> >
>>
>>>
>>>
>>> alguém pode me dar uma descrição mais tangente do uso prático do comando
>>> exec ???
>>>
>>> Desde já obrigado a tdos !
>>>
>>>
>>
>>
>> --
>> Conrado Pinto Rebessi
>> conradopinto@ gmail.com <http://mc/compose?to=conradopi...@gmail.com>
>> Linux Registered User #179496
>> http://counter. li.org <http://counter.li.org> - Get Counted!
>>
>> |_|0|_|
>> |_|_|0|
>> |0|0|0|
>>
>>
>> ------------------------------
>> Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 
>> 10<http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/>-
>> Celebridades<http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/celebridades/>-
>> Música<http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/m%C3%BAsica/>-
>> Esportes<http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/esportes/>
>>
>
>  
>



-- 
Atenciosamente,
Alan MeC Lacerda
Tecnólogo em Redes de Computadores
CCNA e LPIC-1
http://alanlacerda.blogspot.com/
http://www.revista.espiritolivre.org/
"-"-"-"-"-"-" Of course it runs NetBSD "-"-"-"-"-"-"

Responder a