Antes de começar, devo mencionar que, embora o título seja semelhante às seguintes, não é o mesmo problema e eu já testei as respostas dessas perguntas sem nenhuma solução:
Unity não aparece após a instalação dos drivers da Nvidia
Unity Não carrega depois de instalar os drivers proprietários da Nvidia
(Eu gostaria que fosse assim tão fácil).
O problema começou há cerca de duas semanas (usando 12.10 64 bits). Após uma atualização, o Unity não seria carregado. Apenas congelou em uma tela preta, sem movimento do mouse, sem nada. Fui ao modo de recuperação para ver o que aconteceu. No começo eu removi o driver da Nvidia e o sistema inicializou corretamente. Eu então instalei o driver Nvidia (usando o nvidia-current
que vem por padrão sem nenhum PPA adicional instalado) e o problema apareceu. Eu então tentei o PPA para o X-Swat e o PPA do Xorg Edgers, os quais também falharam com o mesmo problema.
Eu continuei verificando os arquivos /var/log
, especialmente os arquivos Xorg e syslog para ver o que aconteceu. Depois de tentar coisas como sudo modprobe nvidia
vi que o módulo não foi criado corretamente, portanto, eu não tinha, por exemplo, o comando nvidia-xconfig
. Então eu baixei todos os arquivos de cabeçalho necessários (genéricos e a versão específica) e reinstalei os drivers nvidia. Desta vez o módulo foi instalado e eu poderia ter acesso a todos os comandos da Nvidia como nvidia-xconfig
para criar o arquivo xorg.conf por exemplo.
Mas o mesmo problema persistiu. Não carregaria o Unity, ele ficaria preso antes de mostrar a área de trabalho em uma tela preta.
Após verificar mais um pouco como meu arquivo pastebin mostra , houve alguns problemas entre o ACPI e o X Server.
Na linha 55, podemos ver o seguinte:
48.651] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
E então, começando na linha 178, podemos ver o seguinte:
[ 49.993] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
[ 49.993] (II) NVIDIA(0): may not be running or the "AcpidSocketPath" X
[ 49.993] (II) NVIDIA(0): configuration option may not be set correctly. When the
[ 49.993] (II) NVIDIA(0): ACPI event daemon is available, the NVIDIA X driver will
[ 49.993] (II) NVIDIA(0): try to use it to receive ACPI event notifications. For
[ 49.993] (II) NVIDIA(0): details, please see the "ConnectToAcpid" and
[ 49.993] (II) NVIDIA(0): "AcpidSocketPath" X configuration options in Appendix B: X
[ 49.993] (II) NVIDIA(0): Config Options in the README.
agora mesmo, esse pode ser o problema (isso é o que eu recebi agora).
Como parece, este é um bug antigo muito estranho para reproduzir e antes disso, o PC estava funcionando bem. Esta é uma placa-mãe Intel DZ68DB com uma placa de vídeo Nvidia 560 ti.
Também houve outras distros que tiveram o mesmo problema:
Arch Linux
Gentoo
Red Hat
Também verifiquei se já tinha o acpid
instalado e sim. Está sendo executado corretamente. Pelo que entendi, é um problema de tempo em que o X Server e o acpid tentam carregar em sincronia para que o X carregue mais rápido, mas como ele é carregado antes do acpid, ele recebe esse erro quando a placa Nvidia deseja usar o ACPI. Assim, uma reinicialização de X ajudaria, já que o acpid seria carregado antes do segundo servidor X, mas, como o sistema está congelado, isso não é possível.
O último erro que encontrei enquanto doint minhas verificações foi com sudo cat /var/log/syslog | grep NV
, o que me deu isto:
Jan 3 22:39:23 cyrex kernel: [ 3.789322] NVRM: GPU at 0000:01:00.0 has fallen off the bus.
Agora, tenho um problema "GPU caiu do barramento" .
Quão rápido foi esse ônibus indo? Eu me pergunto?
Devo acrescentar que testei todas as versões que vêm com 12.10 (nvidia-current, updates, experimental) e também aquelas que vêm em X-Swat PPA e Xorg Edges PPA. Todos dão os mesmos problemas.
UPDATE 1 - Teste 1
fez um teste da seguinte maneira:
Conectei o SSD que eu estava usando em outro computador que também tinha um cartão da Nvidia, desta vez um 9500 GT. Eu também conectei o HDD do outro computador ao meu computador. Basicamente, comutando discos rígidos.
O Ubuntu no outro computador está funcionando bem, mas o disco rígido que estava funcionando antes no outro computador, quando eu o conectei ao computador, deu o mesmo erro mencionado nesta pergunta.
Neste teste, a única coisa que eu mudei foi o computador para o Ubuntu que eu estava usando e funcionou. Mas se eu usei outro Ubuntu de outro computador no meu, o erro aparece, mostrando que o hardware pode ser o problema. Pelo menos eu preciso verificar a configuração da BIOS.
UPDATE 2 - Teste 2
Removeu a placa de vídeo e fez uma troca com o outro computador. Ainda funcionou. Então eu tinha, o SSD que tinha o Ubuntu não funcionando no outro computador, com o mesmo 560 TI que não estava funcionando e mesmo assim ele ainda funcionava.
A única coisa que resta é a placa-mãe, é a Intel DZ68DB com firmware já atualizado. Eu acho estranho que ele estava trabalhando há duas semanas e não mais, mas isso mostra que o problema pode ser a configuração do BIOS ou Motherboard não é compatível de alguma forma.Eu continuarei testando.
Solução 1 (não funciona para mim) - Alguns usuários relataram que fazer o seguinte ajudou:
Edite seu arquivo /etc/rc.local
: sudo nano /etc/rc.local
e adicione a seguinte linha antes da instrução exit 0 :
/usr/bin/nvidia-smi -pm 1
Salve e reinicie. Isso irá definir sua placa de vídeo para o modo de persistência. Para ver se funcionou, após o tipo de reinicialização:
/usr/bin/nvidia-smi -q | grep -i Persistence
e se você ver:
Persistence Mode : Enabled
Então você sabe que é Ativado
Solução 2 (não funciona para mim) - alguns usuários relataram que fazer o seguinte os ajudou:
Edite seu menu do grub:
sudo nano /etc/default/grub
e na linha que diz:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Adicione a ela uma ou todas as seguintes opções de kernel:
acpi=noirq
thermal.off=1
Por exemplo, se adicionar ambos, deve ficar assim:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi=noirq thermal.off=1"
Agora salve e digite update-grub
. Então reinicie.
Para qualquer pessoa com problemas semelhantes, se eles fizeram tudo, eu recomendo também testar os testes que realizei. Dessa forma, você sabe se é o Ubuntu, a placa de vídeo ou qualquer outro hardware.