Eu tenho dois computadores, ambos executando o Debian Bookworm e atualizados no mesmo grau com o software mais recente instalado. Ambas as máquinas são configuradas para inicializar em terminais de texto, o que elas precisam fazer antes de iniciar o X.
O problema é que um computador inicializa em /dev/tty0
vez de, /dev/tty1
o que significa que o comando xinit que funciona no Computador 2 não funciona no Computador 1.
O kernel do computador 1 inicializa /dev/tty0
com estas permissões:
crw------- 1 ben tty 4, 0 May 23 16:46 /dev/tty0
crw--w---- 1 root tty 4, 1 May 23 16:46 /dev/tty1
crw------- 1 ben tty 4, 2 May 23 16:13 /dev/tty2
O kernel do computador 2 inicializa /dev/tty1
com estas permissões:
crw--w---- 1 root tty 4, 0 May 23 05:55 /dev/tty0
crw--w---- 1 ben tty 4, 1 May 23 16:29 /dev/tty1
crw------- 1 ben tty 4, 2 May 23 16:13 /dev/tty2
O comando para iniciar o X que funciona no Computador 2, mas não no Computador 1 é:
xinit /home/ben/.xinitrc -- /usr/bin/X :0 vt1
O usuário ben não tem permissão no Computador 1 para acessar tty1
, então X falha com uma no permission
mensagem.
Para iniciar o X no Computador 1, o usuário ben precisa alterar o xinit
comando para usar vt2
e navegar para tty2
executá-lo.
O aspecto misterioso para mim é que /dev/tty1
não está disponível no Computador 1.
O computador 1 mostra os terminais como:
Ctrl+ alt+ F1consegue/dev/tty0
Ctrl+ alt+ F2consegue/dev/tty2
Ctrl+ alt+ F3consegue/dev/tty3
enquanto no Computador 2 mostra os terminais como:
Ctrl+ alt+ F1consegue/dev/tty0
Ctrl+ alt+ F2consegue/dev/tty1
Ctrl+ alt+ F3consegue/dev/tty2
Em uma tentativa de inicializar /dev/tty1
no Computador 1, adicionei a opção de kernel de console=/dev/tty1
. A máquina congelou com uma tela em branco e o cursor piscando no canto superior esquerdo. Ele precisava de um disco de resgate para reescrever o grub.cfg
arquivo e apagar a opção para poder inicializar corretamente.
Systemd mostra a mesma active and running
saída em [email protected]
ambas as máquinas.
Minha dúvida é: como configurar a máquina para que /dev/tty1
apareça no Computador 1 e, assim, inicializar o Computador 1 dev/tty1
em vez de /dev/tty0
?
Pergunto aqui por não ter encontrado uma resposta em outro lugar.
Edições: Obrigado a todos os entrevistados!
cat /proc/fb gera o mesmo em ambas as máquinas: 0 nouveaudrmfb.
Acho que poderia criar um script para alterar a propriedade de tty0 e tty1 na inicialização, mas parece uma solução alternativa. Nenhuma outra máquina aqui precisaria disso.