De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


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.

Error: No site found with the domain 's2.dicas-l.com.br' (Learn more)