Esse post podia se chamar: "Erro ao executar programas gráficos no emulador de terminal do Ubuntu Dapper", mas o título ficou grande demais ...
Quando eu atualizei o Ubuntu Breezy para o Ubuntu Dapper, eu obtia o seguinte erro todas as vezes que chamava um aplicativo gráfico no terminal:
X Error: BadDevice, invalid or uninitialized input device 168
Major opcode: 148
Minor opcode: 3
Resource id: 0x0
Failed to open device
O que me impressiona nesse caso não é o erro, mas as mais variadas soluções dadas para esse problema, algumas envolvendo até recompilação de pacotes.
Bem, olhando o erro temos logo no começo: "X Error", ou seja, o erro é do servidor X, logo, se isto está ocorrendo no momento, o log /var/log/Xorg.0.log certamente tem alguma coisa coisa a respeito.
Dando um cat no arquivo de log referido, temos algo parecido com:
(EE) xf86OpenSerial: Cannot open device /dev/wacom
No such file or directory.
Error opening /dev/wacom : No such file or directory
Não é preciso ser um especialista em linux ou em mensagens de erro para identificar o problema. Basta um pouquinho de inglês. Não existe um /dev/wacom, logo ele não pode ser acessado e o erro exibido inicialmente é devido a não existência desse dispositivo.
Por que isso aparece ? Ainda não descobri, mas descobri que
eu não preciso disso e
talvez você também não precise, afinal se está usando o Ubuntu até agora e não teve erro algum não acessando um dispositivo que não existe é por que no mínimo o dispotivo é opcional. Ou seja, é possível viver sem ele.
Se continuar daqui, antes de qualquer coisa: FAÇA UM BACKUP DO ARQUIVO /etc/X11/xorg.confPara eliminar o erro, edite, como root, o arquivo /etc/X11/xorg.conf e comente todas as linhas referentes ao dispositivo (comentar siginifica adicionar um # na linha referida). No meu caso, foram as linhas (já comentadas),
note que pode existir pequenas variações de sistema para sistema e que os blocos não precisam estar nessa ordem.
# Section "InputDevice"
# Driver "wacom"
# Identifier "stylus"
# Option "Device" "/dev/wacom"
# Option "Type" "stylus"
# Option "ForceDevice" "ISDV4"
# EndSection
#
# Section "InputDevice"
# Driver "wacom"
# Identifier "eraser"
# Option "Device" "/dev/wacom"
# Option "Type" "eraser"
# Option "ForceDevice" "ISDV4"
# EndSection
#
#Section "InputDevice"
# Driver "wacom"
# Identifier "cursor"
# Option "Device" "/dev/wacom"
# Option "Type" "cursor"
# Option "ForceDevice" "ISDV4"
# EndSection
e as linhas
InputDevice "stylus" "SendCoreEvents"
InputDevice "cursor" "SendCoreEvents"
InputDevice "eraser" "SendCoreEvents"
Que estão dentro do "ServerLayout"
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
# InputDevice "stylus" "SendCoreEvents"
# InputDevice "cursor" "SendCoreEvents"
# InputDevice "eraser" "SendCoreEvents"
EndSection
Reinicie o X, abra o terminal e verifique que não existem mais mensagens de erro ao executar um programa gráfico a partir de um emulador de terminal.
Um comentário é merecido em relação as várias soluções encontradas pela web. Muita gente relacionou o problema com o aplicativo que estava sendo chamado no terminal, outros relacionaram o problema com o sudo, todas as soluções que encontrei são verdades e mentiras ao mesmo tempo.
São verdades por que as que funcionam , bem, resolve, são mentiras por que "resolver" não é o verbo correto e sim "contornar". Uma das soluções consistia exatamente em contornar o "ServerLayout" com uma opção embutida no código fonte. Assim, quando o aplicativo for compilado ele não vai "olhar" para o servidor X, mas assumir um default embutido no binário.
Existe uma coisa importante a ser dita:
Caso você tenha um dispositivo /dev/wacom é bem provável que queira usar esse recurso, nesse caso essa solução é inútil.Outra coisa importante é que ao usar
sudo dpkg-reconfigure -phigh xserver-xorg ele deve recriar as entradas /dev/wacom, então caso os erros apareçam novamente depois de uma atualização, basta repitir o processo.
Caso algo de errado, restaure a cópia de segurança que
você fez e reinicie o servidor X, ou então digite
sudo dpkg-reconfigure -phigh xserver-xorg (isso restaura a configuração original, como se tivesse acabado de instalar o sistema) e reinicie o servidor X.
Se alguém tiver alguma outra solução para esse problema, eu ficaria feliz e agradecido em receber um e-mail/comentário com ela ou com um link para ela.
[update]
Hoje, 8 de Agosto de 2006, o Leandro Melo de Sousa enviou uma pergunta para a lista Ubuntu-br sobre uma mesa digitalizadora, eu não sei a resposta do problema dele, mas o fato é que ele forneceu a seguinte referência
https://help.ubuntu.com/community/Wacom. Nesse link existe um material ensinando como instalar uma mesa digitaliadora Wacom.
Voltando a esse post, existem duas repostas bem definidas aqui: a primeira é que eu não tenho uma mesa digitalizadora wacom, a segunda é que eu não tenho os drives que fazem tudo isso funcionar instalado no meu computador, o que em outras palavras, justifica plenamente as mensagens de erro obtidas e demonstradas neste post.
[/update]
Technorati Tags: wacom erro xorg conf ubuntu