.png)
今天我更新並glx
停止為非 root 使用者工作:
$ glxinfo
name of display: :0
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 154 (GLX)
Minor opcode of failed request: 24 (X_GLXCreateNewContext)
Value in failed request: 0x0
Serial number of failed request: 81
Current serial number in output stream: 82
但當我以 root 身份運行它時,一切都很好:
$ sudo glxinfo
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
...
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 430/PCIe/SSE2
OpenGL core profile version string: 4.2.0 NVIDIA 304.132
OpenGL core profile shading language version string: 4.20 NVIDIA via Cg compiler
...
ubuntu 14.04。但 opensuse 也報告了同樣的問題這裡
$ uname -a
Linux xxx 4.4.0-45-generic #66~14.04.1-Ubuntu SMP Wed Oct 19 15:05:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
唯一未註解的行/etc/X11/Xwrapper.config
是
allowed_users=console
並且沒有具有該名稱的群組或使用者。
nvidia 設備權限:
$ ls -l /dev/nvid*
crw-rw-rw- 1 root root 195, 0 lis 5 00:24 /dev/nvidia0
crw-rw-rw- 1 root root 195, 255 lis 5 00:24 /dev/nvidiactl
答案1
這個為我解決了問題:
顯然,目前唯一的解決方案是降級到先前的驅動程式版本(304.131)。
您可以透過以下方式找到 Ubuntu 的 304.131 驅動程式:
- 去https://launchpad.net/ubuntu/+source/nvidia-graphics-drivers-304/+publishinghistory
- 找到您需要的版本,然後點選版本號
- 在下一頁上,在“Builds”下查找您的 Ubuntu 版本,然後單擊版本名稱後面的
amd64
或鏈接i386
- 在下一頁上,在「建置檔案」下尋找以「nvidia-304_304.131」開頭的 .deb 檔案。下載該文件。
- 打開終端並運行
sudo dpkg -i *path-to-downloaded-.deb-file*
以安裝下載的版本
稍後只需鎖定軟體包版本:sudo apt-mark hold nvidia-304
。當 nvidia 修復其驅動程式時,不要忘記解鎖軟體包:sudo apt-mark unhold nvidia-304
答案2
在花了幾個小時解決這個問題後,我終於成功地透過將 nvidia-current (nvidia-304) 從 132 降級到 131 來使 glx 設定正常工作。
另一位來自軟帽人的抱怨: https://devtalk.nvidia.com/default/topic/974456/f24-permission-problems-/?offset=3
因此,這似乎證實了「多發行版」問題,該問題與 nvidia 追蹤的 bug 1835736 有關,但在撰寫本文時尚未記錄。
ubuntu 的 304.131 deb 仍然可以從以下位置取得: http://ubuntu.ip-connect.vn.ua/pool/restricted/n/nvidia-graphics-drivers-304/
這將糾正您的 14.04 的問題。
然後 :
aptitude hold nvidia-opencl-icd-304 nvidia-current nvidia-304 nvidia-304-dev nvidia-304-updates nvidia-304-updates-dev libcuda1-304
若要啟用所有“非 nvidia 驅動程式更新”,然後:
aptitude unhold nvidia-opencl-icd-304 nvidia-current nvidia-304 nvidia-304-dev nvidia-304-updates nvidia-304-updates-dev libcuda1-304
發行版/nvidia 補丁發布後立即重新啟用「nvidia 驅動程式更新」。
我的2美分。
答案3
nvidia-304.134
解決了這個問題。
我取消了根據此處的其他答案降級到的較舊的 nvidia 驅動程式版本,並從 Ubuntu 14.04 的儲存庫安裝了更新。現在看來不錯。