Já aconteceu com você de executar um programa que faz
uso do svgalib (como Mplayer, Zgv) ou até mesmo
algum crash do servidor X e acabar perdendo as
configurações do console, sem ter nem mesmo a possibilidade
de ver algum texto ou outras coisas estranhas que deixam
seu console inútil?
Infelizmente mudar para outro terminal virtual nesse caso
não resolverá seus problemas e normalmente a única solução é
reiniciar a máquina...
Pois saiba que existe um script provavelmente instalado por
padrão na sua distribuição que pode te ajudar com isso, pelo
menos no Slackware 10 tem ;- ). Caso ele não exista
veremos como criá-lo e seus problemas de "incompatibilidade"
romântica com o svgalib irão terminar.
Ele é o savetextmode, que na verdade é um script que
faz uso dos utilitários restorefont, restoretextmode
e restorepalette.
Como diz sua "man page" (man savetextmode), se você é
um garoto esperto, irá rodar o savetextmode logo depois que seu
sistema inicializar e ANTES de qualquer problema.
Quando o crash acontecer você terá de sair do programa que
estava rodando (pressione CTRL + C), pegar um shell e
digitar:
$ textmode
Pronto! Ele restaurará seu terminal a como era antes.
OK, mas lembre-se que você dará uma de demolidor aqui, por que
na verdade você não verá o que está escrevendo. Se no terminal
que você estava utilizando não funcionar, terá de ir para outro
terminal virtual com ALT + Fx (onde x é um número entre 1 e 6),
entrar com seu logon e senha (novamente as cegas), logo que
você conseguir o prompt rode o comando textmode.
E tem um outro problema, às vezes esses crashes impedem você
de digitar qualquer coisa com seu teclado, os casos são raros mas
acontece, aí infelizmente você terá de reiniciar seu computador. Note
que programas que fazem uso do svgaLib e X Window (Interface
Gráfica) não são recomendados para uso em servidores, haja visto
os problemas inerentes de segurança e os crashes que ocorrem de vez em quando.
Bem, sobre o script, ele guarda as configurações do seu terminal em
"/tmp/fontdata" e "/tmp/textregs", também restaura suas
configurações a partir daí. Segundo a manpage, mas verificando o
script notei que ele apontava para o diretório "/etc/vga", sem
problemas. Mas como ele funciona? Dêem uma olhada no
utilitário 'savetextmode':
#!/bin/sh
# savetextmode
# Apaga as conf. anteriores
rm -f /etc/vga/textregs /etc/vga/fontdata
# Guarda as conf. atuais
restoretextmode -w /etc/vga/textregs
restorefont -w /etc/vga/fontdata
Agora no seu parceiro inseparável, o textmode:
#!/bin/sh
# textmode
# Restaura as configurações do terminal
restoretextmode -r /etc/vga/textregs
restorefont -r /etc/vga/fontdata
restorepalette
Simples e prático. Agora você poderá adicionar o savetextmode no
arquivo de inicialização do seu sistema e quando ele for executado o
vídeo piscará algumas vezes, mas lembre-se que isso é normal. Caso
use Slackware adicione as seguintes linha em /etc/rc.d/rc.local:
# Guardando a conf. de vídeo
savetextmode
E no próximo crash que ocorrer no seu terminal fique tranqüilo e
detone rodando textmode. Assim terá pelo menos uma boa chance
de recuperá-lo. ; - )
Nenhum comentário foi encontrado.