Primeiro de tudo, você precisará editar o seu arquivo inittab. No Debian, ele está localizado em /etc/inittab
, e eu acho que pode ser algo similar no Ubuntu. O prompt normal do TTY é gerenciado com um programa chamado getty
, portanto, você precisará rolar até onde o programa está configurado. Você deve ver muitas linhas semelhantes a isso:
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
Em seguida, precisaremos de um programa chamado rungetty
. Isso permite que você execute programas em um TTY como um usuário em particular. fbterm
requer que você seja root para acessar o framebuffer, by by. Então você pode executar fbterm
no TTY2 assim (os traços duplos significam o fim das opções para rungetty
):
2:23:respawn:/sbin/rungetty -u root tty2 -- fbterm
Apenas um problema; você tem um terminal baseado em framebuffer bonito, mas você está logado como root! Ter um prompt de raiz não autenticado é tão ruim para a segurança quanto possível. Isso não serve.
Podemos usar um programa chamado login
para contornar isso aceitando outro conjunto de credenciais de usuário e, em seguida, iniciando bash ou zsh ou qualquer que seja seu shell de login. Felizmente, fbterm
pode aceitar um comando como seu argumento final (novamente, duplos traços impedem que fbterm
e rungetty
consigam argumentos misturados:
2:23:respawn:/sbin/rungetty -u root tty2 -- fbterm -- login
Com isso, você deve ter fbterm
em execução em um de seus TTYs.