Como você configura o autologin no Debian Jessie?

2

Eu tenho um computador sem cabeçalho (TS-7680) com Debian Jessie que eu acesso via linha de comando Putty. O computador não possui nenhuma GUI e é acessado apenas pela linha de comando. Ele será colocado em campo com um programa que precisa ser reiniciado automaticamente se houver uma queda de energia temporária.

Eu sei como fazer o programa rodar automaticamente. No entanto, estou tendo problemas para passar pelo login. Toda vez que eu inicializo o computador, sou solicitado pelo login raiz. Eu não tenho uma senha neste computador. Após o código de inicialização, é assim:

Debian GNU/Linux 8 ts7680 ttyAMA0

ts7680 login:

Nesse momento, devo digitar root para acessar o prompt de comando root@ts7680:~#

Alguém sabe como se autenticar? Eu pesquisei tudo, mas não consigo encontrar uma resposta. Eu tentei esta solução sem sorte.

    
por Alexa Kirk 21.07.2016 / 02:02

1 resposta

2

Assumindo que o systemd trata ttyAMA0 como uma porta serial da mesma forma que trataria ttyS0 em um PC, você precisa editar o comando iniciado pelo [email protected] .

(Você pode verificar se systemctl status serial-getty@ttyAMA0 mostra que está ativo.)

A versão base está em /lib/systemd/system/[email protected] e dentro dela encontramos o comando que inicia o getty:

ExecStart=-/sbin/agetty --keep-baud 115200,38400,9600 %I $TERM

Crie um arquivo de substituição para o serviço para iniciar o agetty com --autologin root : Crie o diretório /etc/systemd/system/[email protected] e um arquivo chamado override.conf com o seguinte conteúdo:

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --keep-baud 115200,38400,9600 %I $TERM

Em seguida, recarregue o systemd e podemos verificar se a nova configuração está em vigor:

# systemctl daemon-reload
# systemctl cat serial-getty\@ttyAMA0 | grep Exec

(devemos ver o novo comando na última linha ExecStart .)

Se você quiser apenas se autologar após pressionar uma tecla, adicione -p ou --login-pause à linha de comando agetty .

A página que você vinculou fala sobre como configurar o login automático em um console virtual: eles são configurados através de [email protected] e a linha de comando usada para agetty é um pouco diferente (parece estar faltando apenas a opção --keep-baud ) . Nesse caso, usaríamos, digamos, /etc/systemd/system/[email protected]/override.conf para tty1 .

uma resposta no Ask Ubuntu com mais detalhes sobre como substituir a configuração do systemd.

Em um sistema com sysvinit em vez de systemd, você precisa adicionar / modificar a linha correspondente à porta serial em /etc/inittab :

T0:23:respawn:/sbin/getty -L ttyAMA0 --autologin root 38400 vt100
    
por 21.07.2016 / 17:02

Tags