Tôi đã có một vấn đề tương tự ( apt-get upgrade
và về cơ bản mọi thứ đã phá vỡ) trong vài ngày qua. Dưới đây là những bài học của tôi. Tôi hy vọng họ có thể giúp đỡ một ai đó ra khỏi đó.
Tôi đang chạy Ubuntu 14.04 trên một số máy và giải pháp của tôi đã hoạt động trên tất cả chúng khi tôi tìm thấy: P
Trước hết, việc cập nhật trình điều khiển đồ họa và kernel cùng một lúc có thể gây ra sự cố nếu các mô-đun hạt nhân đồ họa được xây dựng cho kernel đang chạy, bởi vì kernel sẽ thay đổi sau khi khởi động lại.
Sau khi loay hoay vài giờ, đây là giải pháp của tôi (trên máy tính để bàn, chỉ sử dụng card đồ họa Nvidia đã cài đặt, do đó không cần bumblebee
hoặc primus
).
Triệu chứng: mỗi lần tôi khởi động lại lightdm
( service lightdm restart
) trình điều khiển sẽ dự phòng mesa
, do đó không sử dụng trình điều khiển Nvidia mà tôi đã cài đặt / cập nhật. Thông báo trong /var/log/Xorg.0.log
đó là nó không thể tải nvidia_drv.so
) để kiểm tra:
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
Thí dụ:
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
Kết quả: ngay cả sau khi cài đặt rõ ràng thành "tự động", một khi bắt đầu lightdm
sẽ đặt lại thành mesa
trình điều khiển, có thể nhìn thấy /var/log/alternative.log
.
Giải pháp:
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
cho thấy rằng nó tải libglx
và nvidia_drv
từ tập đoàn NVIDIA. glxinfo
xác minh rằng.
rm .Xauthority
, chuyển sang GUI một lần nữa (Alt + F7) và thử lại không?