Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Peppermint Linux
Por rootgerr
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Ubuntu Server - Login e execução de comandos automaticamente
Linux user
Publicado por Pedro Araújo em 10/07/2010

Login: PedroAraujo, 257005 pontos | Blog: http://www.pedro-araujo.com/
[ Hits: 6265 ]

Ubuntu Server - Login e execução de comandos automaticamente

Olá, pessoal! Depois de um longo período, estou de volta. E para começar a falar de algo que eu já queria e deveria ter abordado antes, inclusive mais profundamente! Depois de mais de um ano usando só Ubuntu Linux no meu computador pessoal, hoje tenho o privilégio de usá-lo em mais de 90% do tempo em minhas atividades profissionais, satisfação esta que culminou quando eu implantei um servidor GNU/Linux com o Ubuntu 10.04 LTS na empresa em que trabalho atualmente. Nesse processo eu aprendi muitas coisas, e, modestamente, quero compartilhar com vocês.

Quero começar com esta dica simples, mas eu custei a encontrar como fazer isso que vou ensinar. Tive que juntar as partes fórum por fórum, principalmente nos editados em inglês. Indo ao assunto, quem conhece sabe que a versão server do Ubuntu só vem em modo texto! Pros "puxa-saco" da M$ isso não tem explicação, mas eu não tô a fim de explicar isso agora (olha a redundância). Afinal servidor é servidor, não foi feito pra ninguém acessar o Orkut...

Voltando ao que interessa, já tendo em mente que você tem um Ubuntu Server rodando, quando ele é ligado tudo já começa a funcionar, e na tela ele apenas exibe um prompt pra login como este:

Ubuntu 10.04 LTS meuservidor tty1

meuservidor login: _

É bem provável que você precise que o servidor inicie logado automaticamente com um determinado usuário. Isso não é regra, pode ser perfeitamente dispensável. Eu mesmo usei isso e depois voltei atrás. Mas independente das motivações é uma dica útil. Pra configurar este recursos, basta adicionar a seguinte linha ao final do arquivo tty1.conf em /etc/init/:

exec /bin/login -f nomeusuario < /dev/tty1 > /dev/tty1 2>&1

Edite-o pelo Nano e salve:

$ sudo nano /etc/init/tty1.conf

O arquivo completo deve ficar como este:

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.


start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -8 38400 tty1
exec /bin/login -f nomeusuario < /dev/tty1 > /dev/tty1 2>&1

Isso faz com que o sistema comece com o usuário acima logado, e você pode executar um comando ou um programa após o login. Basta adicionar adicioná-los no fim do arquivo .profile que se encontra na pasta do usuário, por exemplo:

$ sudo nano /home/nome_usuario/.profile

É claro que isso pode variar, este seria o padrão. Mas observe as orientações nos comentários do próprio arquivo ~/.profile do usuário para mais detalhes. Simples, e por hoje é só pessoal.


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Modem Ambient no Slackware 10.2
   Dica Linux recomendada Scripts de configuração do Slackware
   Dica Linux recomendada Webcam do Dell Inspiron 1525 no Slackware 12.2 Linux
   Dica Linux recomendada Sistema CACIC com MySQL 4.1 ou superior
   Dica Linux recomendada Servidor Linux básico

Comentários
[1] Comentário enviado por julio_hoffimann em 10/07/2010 - 16:02h:

Pedro,

Obrigado pela dica! Semana que vem estarei configurando um servidor e ela será lembrada se preciso for.

Abraço!

[2] Comentário enviado por cesarasilva em 10/07/2010 - 23:05h:

Pedro,

Muito muito e muito obrigado! A sua dica acabou de resolver o meu problema que ninguém chegou a resolver pra mim.

http://www.vivaolinux.com.br/topico/Ubuntu-e-Kubuntu/Como-fazer-iniciar-o-LiveUSB-sem-o-usuario-ubun...

Valeu cara.

[3] Comentário enviado por cesarasilva em 11/07/2010 - 02:11h:

Tem como você me dar uma mãozinha aqui?

Eu tentei tirar isso aqui
exec /bin/login -f ubuntu </dev/tty1 > /dev/tty1 2>&1

e coloca só isso aqui
exec /sbin/getty -8 38400 tty1

mas toda vez que reiniciou, ele está lá de volta. Já estou ficando louco!

[4] Comentário enviado por PedroAraujo em 12/07/2010 - 08:34h:

Observe as suas permissões de acesso, ou alguma configuração de segurança para este arquivo.
Comigo aconteceu algo semelhante, depois que publiquei esta dica: eu alterava o arquivo, mas por algum motivo que ainda desconheço, quando reiniciava, o arquivo estava o mesmo, porém as minhas alterações eram salvas num arquivo paralelo na mesma pasta com o nome de "tty1.conf.save".

[5] Comentário enviado por badriciobq em 10/10/2010 - 13:12h:

Pedro,
aqui funcionou perfeitamente, porém tive que tira a linha "exec /sbin/getty -8 38400 tty1". Também não consegui entender perfeitamente o que esta parte do comando faz < /dev/tty1 > /dev/tty1, os sinais de "<" e ">" assumem somente a função de direcionadores? Tem como eu executar um script personalizado nesta linha mesmo? sem precisar utilizar o .profile?

vlw :)



Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.