Login automático do terminal Debian Buster

Login automático do terminal Debian Buster

Estou reembalando um ISO do Debian Buster Live. Primeiro descompacto o arquivo filesystem.squashfs, depois, chrootno sistema não compactado, faço minhas alterações.

Quero que meu ISO faça login automaticamente (terminal). eu seguiessas técnicas, mas falhei porque recebi o erro:

System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down

Então não posso usar systemctl, o que gera esse erro.

As respostas que encontrei aqui para contornar o erro dizem usar serviceem vez de systemctl, o que não se aplica no meu caso.


É possível fazer login automático usando outra técnica?

É possível funcionar systemctldentro de um chroot, para que eu possa aplicar a técnica acima?


Resposta provisória:

Criei o arquivo [email protected]em /lib/systemd/systeme fiz um sysmlink em /etc/systemd/system/multi-user.target.wants/. O conteúdo do arquivo.

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --noclear %I 38400 linux

Isso me levou ao login automático. Vou esperar por insights antes de responder minha própria pergunta.

Responder1

Observação: Isso pode estar ou não relacionado ao seu problema, mas o problema que explico aqui levará às mesmas mensagens de erro que você mostrou devido à falta de um link simbólico.

Não sou um especialista, mas no Debian 10 (Buster) o sistema init padrão é systemdo que significa que /sbin/init( /usr/sbin/init) será vinculado a systemd.

Infelizmente, notei um bug ao executar vários convidados KVM que faz com que o link simbólico /sbin/initvinculado /lib/systemd/systemdseja removido. Não sei o motivo disso, porém, suspeito que org.freedesktop.systemd1(não sei absolutamente o que é) possa ser o motivo.

Link simbólico correto

A saída correta seria:

root@vpstest:~# ls -la /sbin/init
lrwxrwxrwx 1 root root 20 Jan 29 19:07 /sbin/init -> /lib/systemd/systemd

Link simbólico ausente

Se isso mostrar, pode haver algo errado:

root@vps1:~# ls -la /sbin/init
-rwxr-xr-x 1 root root 53016 Feb 14  2019 /sbin/init

Consertar

Para corrigir isso, apenas removo esse arquivo e reconstruo o link simbólico:

rm /sbin/init && ln -s /lib/systemd/systemd /sbin/init

Ao usar o virsh, você precisa destruir e iniciar o convidado:

virsh destroy vps1 && virsh start vps1

informação relacionada