У меня была похожая проблема ( apt-get upgrade
и в основном все сломалось) в течение последних нескольких дней. Вот мои уроки. Я надеюсь, что они могут помочь кому-то там.
Я использую Ubuntu 14.04 на нескольких машинах, и мое решение сработало на всех из них, как только я его нашел: P
Прежде всего, одновременное обновление графических драйверов и ядра может вызвать проблему, если модули графического ядра созданы для работающего ядра, поскольку ядро изменится после перезагрузки.
После нескольких часов игры это было моим решением (на настольном компьютере, использующем только установленную видеокарту Nvidia, так что нет необходимости bumblebee
или primus
).
Симптом: каждый раз, когда я перезагружаюсь lightdm
( service lightdm restart
), драйвер становится откатом mesa
, поэтому я не использую драйвер Nvidia, который я установил / обновил. Сообщение в /var/log/Xorg.0.log
том, что он не может загрузить nvidia_drv.so
), чтобы проверить:
update-alternatives --get-selections # lists all alternatives
update-alternatives --config x86_64-linux-gnu_gl_conf # available options and lets you choose "0" to automatically select the best driver
update-alternatives --config i386-linux-gnu_gl_conf # for multiarch or i386 machines
Пример:
update-alternatives --config x86_64-linux-gnu_gl_conf
There are 3 choices for the alternative x86_64-linux-gnu_gl_conf (providing /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/nvidia-340/ld.so.conf 8604 auto mode
1 /usr/lib/nvidia-340-prime/ld.so.conf 8603 manual mode
2 /usr/lib/nvidia-340/ld.so.conf 8604 manual mode
3 /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf 500 manual mode
Результат: даже после явной установки его в «auto», один раз при запуске lightdm
сбросит его до mesa
драйвера, что можно увидеть в /var/log/alternative.log
.
Решение:
service lightdm stop
# remove all old stuff
apt-get remove --purge nvidia\*
apt-get remove --purge bumblebee
apt-get remove --purge primus primus-libs
apt-get autoremove --purge
# unload old drivers from kernel
rmmod nvidia
rmmod drm
# now everything is gone. Make sure you are running the latest kernel, then:
apt-get install nvidia-XXX # nvidia-367 for me, nvidia-current fits generally
update-alternatives --auto x86_64-linux-gnu_gl_conf
update-alternatives --auto i386-linux-gnu_gl_conf
service lightdm start
Et вуаля, /var/log/Xorg.0.log
показывает, что загружается libglx
и nvidia_drv
от корпорации NVIDIA. glxinfo
проверяет это.
rm .Xauthority
снова переключиться на графический интерфейс (Alt + F7) и повторить попытку?