Não é mais possível alternar da Intel para a GPU NVIDIA


39

[Ubuntu 14.04 64bit]

Depois de alternar entre os gráficos Intel / NVIDIA e os diferentes drivers da NVIDIA, agora estou de repente preso à GPU Intel. Costumava não haver nenhum problema ao alternar entre os dois - não posso dizer com certeza o que está causando o problema de repente. Acho que a última coisa que fiz foi mudar para o driver "X.Org X server" - então algo quebrou. A troca foi parte de mim tentando solucionar problemas com a configuração de uma tela secundária .

insira a descrição da imagem aqui

Sempre que tento mudar para a NVIDIA, recebo esta mensagem de erro muito expressiva e, em seguida, ela volta para a Intel: /

Eu poderia usar alguma ajuda para solucionar problemas ou sugestões sobre o que tentar.

Até o momento eu (des / re) instalei os vários pacotes "nvidia-settings" / "nvidia-current" / "nvidia-current-updates" / "nvidia-331" / "nvidia-331-updates". Para nenhum proveito.

> lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107GLM [Quadro K2000M] (rev a1)

/etc/apt/sources.list: pode ser encontrado em pastebin.com


Em relação à sugestão de Qasim:

raffael@raffael-GT60~> sudo prime-select nvidia
[sudo] password for raffael: 
Error: alternatives are not set up properly
Error: nvidia mode can't be enabled
raffael@raffael-GT60~> sudo prime-select intel
Error: alternatives are not set up properly
Error: intel mode can't be enabled

Em relação à 2ª sugestão de Qasim:

sudo apt-get purge nvidia*
[reboot]
sudo apt-get install nvidia-319-updates nvidia-settings-319-updates nvidia-prime
[reboot]
[tried to switch to NVIDIA]

O estranho é - isso realmente funcionou da primeira vez !? Então eu mudei de volta para Intel - logoff / on - Voltei para NVIDIA - logoff / on -> sistema travou - erro como descrito acima.


Em relação à sugestão de Louis Matthijssen:

raffael@raffael-GT60:~$ sudo update-alternatives --set /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf /usr/lib/nvidia-331-updates-prime/ld.so.conf
update-alternatives: error: alternative name (/etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf) must not contain '/' and spaces
raffael@raffael-GT60:~$ ls -la /usr/lib/nvidia-331-updates-prime
total 44
drwxr-xr-x   2 root root  4096 Mai  2 22:45 .
drwxr-xr-x 196 root root 32768 Mai  3 10:57 ..
-rw-r--r--   1 root root     0 Apr  4 11:50 alt_ld.so.conf
-rw-r--r--   1 root root    60 Apr  4 11:50 ld.so.conf

Algo repetido duas vezes - não funcionou novamente: /

Agora parece funcionar:

raffael@raffael-GT60:~$ sudo update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/nvidia-331-updates-prime/ld.so.conf 
update-alternatives: using /usr/lib/nvidia-331-updates-prime/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in manual mode

raffael@raffael-GT60:~$ sudo update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/nvidia-331-updates-prime/alt_ld.so.conf
update-alternatives: using /usr/lib/nvidia-331-updates-prime/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

Depois, pude mudar para a NVIDIA - mas não foi oferecida a extensão "NVIDIA X Server Settings" - será reiniciada agora e ver o que acontece. Acompanhamento: voltou para a Intel após a reinicialização e não pode mudar para a NVIDIA como de costume. Para mim, parece que o seu método, Louis, engana o sistema operacional a acreditar que ele usa a NVIDIA, enquanto esse não é realmente o caso.


2
Eu tenho exatamente o mesmo problema, na verdade o problema foi estendido e agora minha placa Nvidia não está funcionando no Windows 8.1, o que significa que afeta algumas configurações do sistema operacional :( Na verdade, tentei com uma instalação limpa do Ubuntu e não reconizes mais o cartão.
user5288

Você pode postar o seu /etc/apt/sources.list?
Davidbaumann

@Raffael ... Eu apaguei a resposta, tente remover e reinstalar o nvidia privilegiada por sudo apt-get install nvidia-319-updates nvidia-settings-319-atualizações nvidia-prime
Qasim

você removeu nvidia 1st? @Raffael
Qasim

i pode ter teamviewer acesso para que eu possa olhar para a questão
Qasim

Respostas:


18

Como você obtém o seguinte erro:

Error: alternatives are not set up properly

Você pode tentar definir as alternativas você mesmo.

Quando mudo para a Intel, vejo:

update-alternatives: using /usr/lib/nvidia-331-prime/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in manual mode
update-alternatives: using /usr/lib/nvidia-331-prime/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

Quando mudo para a NVIDIA, vejo:

update-alternatives: using /usr/lib/nvidia-331/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in manual mode
update-alternatives: using /usr/lib/nvidia-331/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

Então você pode tentar fazer isso para mudar para a Intel:

sudo update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/nvidia-331-prime/ld.so.conf
sudo update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/nvidia-331-prime/alt_ld.so.conf

Obviamente, você deve substituir 331 por sua própria versão.

Agora você pode tentar algumas coisas para ativar a opção:

  • Sair e entrar novamente

    para reiniciar o servidor X, como faria normalmente

  • Reinicie todo o seu PC

    para o mesmo objetivo do acima

  • Executar sudo prime-select nvidia

    como suas alternativas agora estão definidas para a Intel, espero que isso também corrija outras configurações para que tudo esteja como deveria ser novamente (obviamente você ainda deve reiniciar o servidor X)

Espero ter interpretado o erro corretamente.

Além disso, você pode prime-select queryverificar qual cartão está atualmente selecionado e corrigir as alternativas para esse cartão (por exemplo, NVIDIA), pois de alguma forma você pode ter definido alternativas para o outro cartão (por exemplo, Intel), mas a ferramenta ainda está pensando que você está usando o outro cartão (por exemplo, NVIDIA), causando um erro ao dizer que as alternativas não estão configuradas corretamente.


Não sei por que você sugere como devo mudar para a Intel - mas invocar o primeiro comando acaba sendo adicionado à minha pergunta.
Raffael

Sinto muito, esses foram os comandos errados. Quero dizer, você pode tentar definir as alternativas para a placa atual (Intel), como prime-selectdiz que as alternativas estão quebradas. Em seguida, você pode tentar se a mudança para a NVIDIA estiver funcionando novamente. Não sei se isso funcionará e você deve verificar o que as alternativas estão apontando no momento, para que você possa restaurar as alternativas se isso não funcionar.
Louis Matthijssen

11
Acabei de ter exatamente o mesmo problema que você quando tentei mudar para a NVIDIA. Os comandos que forneci aqui funcionaram para mim. Veja minha saída completa .
Louis Matthijssen

+10 +50 para o esforço;) Eu acho que eu vou reinstalar o Ubuntu quando eu encontrar o tempo
Raffael

11
Para mim, o problema era que as alternativas apontavam para o driver do Mesa, portanto, confundindo o prime-select. Tudo o que eu precisava fazer era redefinir as alternativas aos padrões: update-alternatives --auto i386-linux-gnu_gl_conf, update-alternatives --auto x86_64-linux-gnu_gl_conf. Depois disso, o painel da nVidia voltou a funcionar.
Cobra

5

Acho que encontrei uma solução alternativa, pelo menos .

É tudo sobre update-alternatives.
Eu notei que ambos

sudo update-alternatives --config i386-linux-gnu_gl_conf

e

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

retorna lista contendo /usr/lib/i386-linux-gnu/mesa/ld.so.confou similar.

De alguma forma, após cada reinicialização ter /usr/lib/i386-linux-gnu/mesa/ld.so.confsido definida como escolhida, mesmo que eu a tenha alterado manualmente.

Tentei alterar a ordem dessa lista, mas finalmente a solução foi removê-la

sudo update-alternatives --remove x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf

e

sudo update-alternatives --remove i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf

Isso deve ser o suficiente.
Caso contrário, defina 'i386' e 'x86_64' para a mesma opção,

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

e

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

Reinicie depois.

Você sempre pode restaurá-lo ao estado original

sudo update-alternatives --install /etc/ld.so.conf.d/i386-linux-gnu_GL.conf i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf 500  

e

sudo update-alternatives --install /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf 500

Espero que também funcione para você.


11
Depois de seguir suas instruções e após a reinicialização, não consegui mais fazer o login. A página de login apareceu e, após digitar minha senha e pressionar Enter, mostraria uma tela preta e, em seguida, a tela de login novamente. Usei CTRL + Alt + F1 e usei seus dois últimos comandos para restaurá-lo às configurações anteriores. Agora posso entrar, mas ainda não consigo usar meu cartão NVidia.
BourbonCreams

@ BourbonCreams, lamento ouvir isso. Eu recomendaria tentar sudo apt-get purge nvidia-*, reiniciar, adicionar este ppa: ppa:graphics-drivers/ppa(de webupd8.org/2016/06/… ) e instalar o driver selecionado usando o aplicativo GUI embutido ou em execução sudo apt-get install nvidia-<choosen driver version> nvidia-prime- ele também deve funcionar. Às vezes, eu conseguia fazer isso duas vezes por algum motivo (ou pelo menos reiniciar duas vezes). Para ser sincero, acho que a solução alternativa dessa resposta não é perfeita.
Krc # 11/07

Esta atualização não a corrigiu para mim, mas para mim ocorreu que o módulo nvidia não estava carregando devido a um bug em algum link simbólico, conforme descrito (e corrigido) com esta resposta aqui: askubuntu.com/questions/900285 / ...
Scott

4

o que funcionou para mim, ainda estou tentando encontrar o post dele. Eu tinha tantos que estava vendo:

Aqui, é isso que funcionou para mim:

Eu tentei:

sudo update-alternatives --config x86_64-linux-gnu_gl_conf
sudo ldconfig -n
sudo update-initramfs -u

E reiniciado, sem alterações. Então eu tentei:

sudo apt-get purge libvdpau-va-gl1 bumblebee* nvidia*
sudo apt-get install linux-headers-generic
sudo apt-get install nvidia-331 nvidia-settings nvidia-prime

Reinicie. Ainda assim, não há alterações e a mesma mensagem de erro em branco nas configurações da nvidia quando tento mudar para o cartão nvidia.

Tentei alternar manualmente, usando sudo prime-switch nvidia, e as informações de configuração foram atualizadas. Eu tentei novamente, e a nvidia-settings me pediu para sair e entrar novamente e ... voilà! Eu tenho que trabalhar!

No meu caso, parecia que antes de poder alternar usando a interface nvidia-settings, tive que alternar manualmente primeiro como superusuário, para gerar a configuração adequada!

Ainda bem que tentei isso, ou ainda estaria tentando instalar outros drivers! Espero que isso seja útil para outra pessoa!


4

siga as pré-respostas, é assim que eu acerto no linux mint 17.2.

primeiro eu faço:

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

selecione aquele com 'nvidia-prime':

sudo prime-select nvidia

depois reinicie:

sudo init 6

2

Eu tive um problema que parecia o mesmo e a resposta foi que eu ainda tinha bumblebee-nvidiainstalado.

Observe que você está limpando "tudo NVIDIA" sudo apt-get purge nvidia*e o pacote acima não corresponde a esse curinga.

Então, execute o comando:

apt-get purge bumblebee-nvidia nvidia*

Em seguida, reiniciar, em seguida, instalar o relevante nvidia-xxx, nvidia-settingse nvidia-primepacotes (Eu estou usando atualmente a versão 340,24 a partir xorg-edgers ).

Agora, durante esta instalação, você deverá ver as update-alternativesmensagens relevantes sobre os *gnu_gl_confarquivos.


: - / ... nada bumblebish esquerda para a purga desde a minha última tentativa
Raffael

0

Eu encontrei a solução.

Não sei ao certo qual foi exatamente o problema, mas esse problema parece ter desaparecido em uma nova instalação do 16.04. Talvez eles tenham atualizado as dependências corretamente? Não tenho certeza.

Mas, pessoalmente, posso confirmar que isso não é mais um problema no 16.04. Eu costumava ter exatamente o mesmo problema em 14.04. Mas agora com 16.04 não é mais um problema.


Perdoe-me por trazendo uma resposta de idade, mas eu estava enfrentando exatamente a mesma questão
Rakshith Ravi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.