错误:GLX 在系统上不可用

错误:GLX 在系统上不可用

重新启动我的 Ubuntu 14.04 机器后,我无法再次登录 Unity,不得不求助于 Gnome。当我运行时我发现GLX有问题: /usr/lib/nux/unity_support_test -p

我收到以下消息:

Error: GLX is not available on the system

另外,less 的输出(相关部分)/var/log/Xorg.0.log如下所示:

[   682.533] (II) LoadModule: "glx"
[   682.533] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/libglx.so
[   682.533] (EE) Failed to load /usr/lib/x86_64-linux-gnu/xorg/extra-modules/libglx.so: libnvidia-tls.so.349.16: cannot open shared object file: No such file or directory
[   682.533] (II) UnloadModule: "glx"
[   682.533] (II) Unloading glx
[   682.533] (EE) Failed to load module "glx" (loader failed, 7)
[   682.533] (==) Matched nvidia as autoconfigured driver 0
[   682.533] (==) Matched nouveau as autoconfigured driver 1
[   682.533] (==) Matched nvidia as autoconfigured driver 2
[   682.533] (==) Matched nouveau as autoconfigured driver 3
[   682.533] (==) Matched modesetting as autoconfigured driver 4
[   682.533] (==) Matched fbdev as autoconfigured driver 5
[   682.533] (==) Matched vesa as autoconfigured driver 6
[   682.533] (==) Assigned the driver to the xf86ConfigLayout
[   682.533] (II) LoadModule: "nvidia"
[   682.533] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/nvidia_drv.so
[   682.534] (II) Module nvidia: vendor="NVIDIA Corporation"
[   682.534]     compiled for 4.0.2, module version = 1.0.0
[   682.534]     Module class: X.Org Video Driver
[   682.534] (II) LoadModule: "nouveau"
[   682.534] (WW) Warning, couldn't open module nouveau
[   682.534] (II) UnloadModule: "nouveau"
[   682.534] (II) Unloading nouveau
[   682.534] (EE) Failed to load module "nouveau" (module does not exist, 0)
[   682.534] (II) LoadModule: "modesetting"
[   682.534] (WW) Warning, couldn't open module modesetting
[   682.534] (II) UnloadModule: "modesetting"
[   682.534] (II) Unloading modesetting
[   682.534] (EE) Failed to load module "modesetting" (module does not exist, 0)
[   682.534] (II) LoadModule: "fbdev"
[   682.534] (WW) Warning, couldn't open module fbdev
[   682.534] (II) UnloadModule: "fbdev"
[   682.534] (II) Unloading fbdev
[   682.534] (EE) Failed to load module "fbdev" (module does not exist, 0)
[   682.534] (II) LoadModule: "vesa"
[   682.534] (WW) Warning, couldn't open module vesa
[   682.534] (II) UnloadModule: "vesa"
[   682.534] (II) Unloading vesa
[   682.534] (EE) Failed to load module "vesa" (module does not exist, 0)
[   682.534] (==) Matched nvidia as autoconfigured driver 0
[   682.534] (==) Matched nouveau as autoconfigured driver 1
[   682.534] (==) Matched nvidia as autoconfigured driver 2
[   682.534] (==) Matched nouveau as autoconfigured driver 3
[   682.534] (==) Matched modesetting as autoconfigured driver 4
[   682.534] (==) Matched fbdev as autoconfigured driver 5
[   682.534] (==) Matched vesa as autoconfigured driver 6
[   682.534] (==) Assigned the driver to the xf86ConfigLayout
[   682.534] (II) LoadModule: "nvidia"
[   682.534] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/nvidia_drv.so
[   682.534] (II) Module nvidia: vendor="NVIDIA Corporation"
[   682.534]     compiled for 4.0.2, module version = 1.0.0
[   682.534]     Module class: X.Org Video Driver
[   682.534] (II) UnloadModule: "nvidia"
[   682.534] (II) Unloading nvidia
[   682.534] (II) Failed to load module "nvidia" (already loaded, 32523)
[   682.534] (II) LoadModule: "nouveau"
[   682.534] (WW) Warning, couldn't open module nouveau
[   682.534] (II) UnloadModule: "nouveau"
[   682.534] (II) Unloading nouveau
[   682.534] (EE) Failed to load module "nouveau" (module does not exist, 0)
[   682.534] (II) LoadModule: "modesetting"
[   682.535] (WW) Warning, couldn't open module modesetting
[   682.535] (II) UnloadModule: "modesetting"
[   682.535] (II) Unloading modesetting
[   682.535] (EE) Failed to load module "modesetting" (module does not exist, 0)
[   682.535] (II) LoadModule: "fbdev"
[   682.535] (WW) Warning, couldn't open module fbdev
[   682.535] (II) UnloadModule: "fbdev"
[   682.535] (II) Unloading fbdev
[   682.535] (EE) Failed to load module "fbdev" (module does not exist, 0)
[   682.535] (II) LoadModule: "vesa"
[   682.535] (WW) Warning, couldn't open module vesa
[   682.535] (II) UnloadModule: "vesa"
[   682.535] (II) Unloading vesa
[   682.535] (EE) Failed to load module "vesa" (module does not exist, 0)
[   682.535] (II) NVIDIA dlloader X Driver  349.16  Tue Apr  7 23:19:49 PDT 2015
[   682.535] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   682.535] (++) using VT number 7

[   682.539] (II) Loading sub module "fb"
[   682.539] (II) LoadModule: "fb"
[   682.539] (II) Loading /usr/lib/xorg/modules/libfb.so
[   682.540] (II) Module fb: vendor="X.Org Foundation"
[   682.540]     compiled for 1.15.1, module version = 1.0.0
[   682.540]     ABI class: X.Org ANSI C Emulation, version 0.4
[   682.540] (II) Loading sub module "wfb"
[   682.540] (II) LoadModule: "wfb"
[   682.540] (II) Loading /usr/lib/xorg/modules/libwfb.so
[   682.540] (II) Module wfb: vendor="X.Org Foundation"
[   682.540]     compiled for 1.15.1, module version = 1.0.0
[   682.540]     ABI class: X.Org ANSI C Emulation, version 0.4
[   682.540] (II) Loading sub module "ramdac"
[   682.540] (II) LoadModule: "ramdac"
[   682.540] (II) Module "ramdac" already built-in
[   682.540] (II) NVIDIA(0): Creating default Display subsection in Screen section
    "Default Screen Section" for depth/fbbpp 24/32
[   682.540] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
[   682.540] (==) NVIDIA(0): RGB weight 888
[   682.540] (==) NVIDIA(0): Default visual is TrueColor
[   682.540] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[   682.540] (**) NVIDIA(0): Enabling 2D acceleration
[   682.540] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
[   682.540] (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
[   682.540] (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
[   682.540] (EE) NVIDIA(0):     you continue to encounter problems, Please try
[   682.540] (EE) NVIDIA(0):     reinstalling the NVIDIA driver.
[   682.549] (II) NVIDIA(GPU-0): Found DRM driver nvidia-drm (20150116)
[   682.550] (II) NVIDIA(0): NVIDIA GPU Quadro K2200 (GM107GL-A) at PCI:3:0:0 (GPU-0)
[   682.550] (--) NVIDIA(0): Memory: 4194304 kBytes
[   682.550] (--) NVIDIA(0): VideoBIOS: 82.07.5a.00.01
[   682.550] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[   682.622] (--) NVIDIA(0): Valid display device(s) on Quadro K2200 at PCI:3:0:0
[   682.622] (--) NVIDIA(0):     CRT-0
[   682.622] (--) NVIDIA(0):     DFP-0
[   682.622] (--) NVIDIA(0):     DFP-1
[   682.622] (--) NVIDIA(0):     DFP-2
[   682.622] (--) NVIDIA(0):     DELL U2711 (DFP-3) (connected)
[   682.622] (--) NVIDIA(0):     DELL 2709W (DFP-4) (boot, connected)
[   682.622] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
[   682.622] (--) NVIDIA(0): DFP-0: Internal TMDS
[   682.622] (--) NVIDIA(GPU-0): DFP-0: 330.0 MHz maximum pixel clock
[   682.622] (--) NVIDIA(0): DFP-1: Internal TMDS
[   682.622] (--) NVIDIA(GPU-0): DFP-1: 165.0 MHz maximum pixel clock
[   682.622] (--) NVIDIA(0): DFP-2: Internal TMDS
[   682.622] (--) NVIDIA(GPU-0): DFP-2: 165.0 MHz maximum pixel clock
[   682.622] (--) NVIDIA(0): DELL U2711 (DFP-3): Internal DisplayPort
[   682.622] (--) NVIDIA(GPU-0): DELL U2711 (DFP-3): 960.0 MHz maximum pixel clock
[   682.623] (--) NVIDIA(0): DELL 2709W (DFP-4): Internal DisplayPort
[   682.623] (--) NVIDIA(GPU-0): DELL 2709W (DFP-4): 960.0 MHz maximum pixel clock
[   682.623] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[   682.623] (**) NVIDIA(0):     device DELL U2711 (DFP-3) (Using EDID frequencies has been
[   682.623] (**) NVIDIA(0):     enabled on all display devices.)
[   682.625] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[   682.625] (**) NVIDIA(0):     device DELL 2709W (DFP-4) (Using EDID frequencies has been
[   682.625] (**) NVIDIA(0):     enabled on all display devices.)
[   682.642] (==) NVIDIA(0): 
[   682.642] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
[   682.642] (==) NVIDIA(0):     will be used as the requested mode.
[   682.642] (==) NVIDIA(0): 
[   682.642] (II) NVIDIA(0): Validated MetaModes:
[   682.642] (II) NVIDIA(0):     "DFP-4:nvidia-auto-select,DFP-3:nvidia-auto-select"
[   682.642] (II) NVIDIA(0): Virtual screen size determined to be 4480 x 1440
[   682.643] (--) NVIDIA(0): DPI set to (84, 84); computed from "UseEdidDpi" X config
[   682.643] (--) NVIDIA(0):     option
[   682.643] (--) Depth 24 pixmap format is 32 bpp
[   682.644] (II) NVIDIA: Using 3072.00 MB of virtual memory for indirect memory
[   682.644] (II) NVIDIA:     access.
[   682.649] (II) NVIDIA(0): Setting mode "DFP-4:nvidia-auto-select,DFP-3:nvidia-auto-select"
[   682.723] Loading extension NV-GLX
[   682.769] (==) NVIDIA(0): Disabling shared memory pixmaps
[   682.769] (==) NVIDIA(0): Backing store enabled
[   682.769] (==) NVIDIA(0): Silken mouse enabled
[   682.769] (==) NVIDIA(0): DPMS enabled
[   682.769] Loading extension NV-CONTROL
[   682.769] Loading extension XINERAMA
[   682.769] (II) Loading sub module "dri2"
[   682.769] (II) LoadModule: "dri2"
[   682.769] (II) Module "dri2" already built-in
[   682.769] (II) NVIDIA(0): [DRI2] Setup complete
[   682.769] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia

我已经尝试重新安装 NVidia 驱动程序 (346.82),并尝试使用较新的版本 (355.06),但无法解决问题。另外,我无法毫无问题地播放我以前播放过的任何类型的视频。

如何让 GLX 再次正常工作?

编辑:glxinfo另外,这是终端 的输出:

Error: couldn't find RGB GLX visual or fbconfig

我认为这证实了 GLX 不起作用。另外当我跑步时nvidia-settings,在OpenGL/GLX 信息, 我懂了:

Failed to query the GLX server vendor.

答案1

我发现问题是由内核更新引起的,该更新不知何故弄乱了我的 GPU 驱动程序(NVidia 349.16,x64)。奇怪的是,我无法通过从 Ubuntu 存储库安装较新版本的 NVidia 驱动程序来解决问题软件和更新 > 附加驱动程序(我尝试了开源版本和专有版本),但我必须手动安装出现问题之前的相同版本(349.16)。这解决了问题。

经过两天的研究,我发现每次更新内核后,都必须重新安装 NVidia 驱动程序。 (但是,正如此处指出的,有一些解决方法:https://askubuntu.com/questions/492217/nvidia-driver-reset-after-each-kernel-update)。唯一让我惊讶的是,当我尝试安装其他也支持我的显卡(Quadro K2200)的较新的 NVidia 驱动程序时,问题并未解决,但我需要与之前完全相同的驱动程序来解决此问题。

答案2

我遇到了同样的错误,但是由于其中的文件/usr/lib/x86_64-linux-gnu/xorg/x11-extra-modules/引用了旧的东西,并且由于这个问题证实了其粗鲁性,因此我将内容移动到我家中的 tmp 目录中并执行了

systemctl restart gdm

一切都很好。

我在 Ubuntu 18.04 上使用 nvidia-396,并且能够升级到 415 驱动程序。

相关内容