У мене було подібне питання ( 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
Результат: навіть після того, як явно встановив його на "авто", один раз його запуск 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 voila, /var/log/Xorg.0.log
показує, що вона завантажує libglx
і nvidia_drv
від корпорації NVIDIA. glxinfo
підтверджує це.
rm .Xauthority
, перейти на GUI ще раз (Alt + F7) та повторити спробу?