você está aqui: Home  → Arquivo de Mensagens

RedHat Linux - Login Sem Senhas

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 29 de Janeiro de 2003

É cada vez mais comum o uso de sistemas GNU/Linux para uso doméstico, em equipamentos desconectados da rede e com um único usuário.

Nestas condições, muitos preferem evitar o trabalho de ter que digitar uma identificação e uma senha.

Existem diversas formas de se fazer isto, porém uma maneira bem interessante está descrita em http://www.linuxgazette.com/issue72/chung.html, em um artigo da Linux Gazette.

O procedimento é bem simples. Basta compilar um pequeno programa e colocá-lo no arquivo /etc/inittab.

  autologin.c
  
  int main() {
     execlp( "login", "login", "-f", "queiroz", 0);
  }

Compile este programa:

  # gcc -o autologin autologin.c
  # cp autologin /usr/local/sbin

No caso, este programa determina que o usuário que terá o login feito automaticamente será queiroz.

Resta agora modificar o arquivo /etc/inittab.

Neste arquivo procure pelas linhas:

  #Run gettys in standard runlevels
  1:2345:respawn:/sbin/mingetty tty1
  2:2345:respawn:/sbin/mingetty tty2
  3:2345:respawn:/sbin/mingetty tty3
  4:2345:respawn:/sbin/mingetty tty4
  5:2345:respawn:/sbin/mingetty tty5
  6:2345:respawn:/sbin/mingetty tty6

Vamos agora alterar as definições da tty1 para invocar o programa autologin:

  #Run gettys in standard runlevels
  #1:2345:respawn:/sbin/mingetty tty1
  1:2345:respawn:/sbin/agetty -n -l /usr/local/sbin/autologin 38400 tty1
  2:2345:respawn:/sbin/mingetty tty2
  3:2345:respawn:/sbin/mingetty tty3
  4:2345:respawn:/sbin/mingetty tty4
  5:2345:respawn:/sbin/mingetty tty5
  6:2345:respawn:/sbin/mingetty tty6

Estamos modificando apenas a entrada para tty1. As demais continuam inalteradas. O programa mingetty também é substituido visto que não suporta praticamente nenhuma alteração. O programa agetty (Alternative Linux Getty), suporta as diretivas -l (programa a ser invocado em substituição ao programa /bin/login) e -n (não apresentar o prompt de login na tela).

O arquivo .bash_profile do usuário que terá o login feito automaticamente (queiroz) deverá conter as seguintes linhas para ativação do ambiente gráfico:

  if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
    startx
  fi

A última providência a ser tomada é desabilitar o gerenciador gráfico de login (xdm ou gdm). Para isto, também no arquivo /etc/inittab, comente as seguintes linhas:

  # Run xdm in runlevel 5
  # xdm is now a separate service
  #x:5:respawn:/etc/X11/prefdm -nodaemon

Só para garantir, na linha

  id:5:initdefault:

mude para

  id:3:initdefault:

O runlevel (nível de execução) 3 é não gráfico.

Para saber mais sobre níveis de execução leia o artigo Níveis de Execução, que se encontra em http://www.dicas-l.com.br/artigos/linux/linux17-1.shtml

Todos estes comandos foram executados em um sistema RedHat Linux versão 8.0 mas devem funcionar, com ligeiras modificações, em qualquer sistema GNU/Linux.



Veja a relação completa dos artigos de Rubens Queiroz de Almeida

 

 

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script