安装 Nvidia 驱动程序后,CentOS 7 w/Gnome 在启动时挂起?

安装 Nvidia 驱动程序后,CentOS 7 w/Gnome 在启动时挂起?

关于这些主题有很多单独的信息,但我无法找到我认为非常常见的情况的答案。

我在一台装有 CentOS 7 和 Gnome 桌面的服务器上安装了 2 块 Nvidia GTX 1080。GPU 将专门用于 CUDA 计算,无视频输出

查看内核加载屏幕的截图。

Nvidia 驱动程序安装后加载 GUI 屏幕

我的 xorg.conf 如下所示:

[root@0cc47a8a1a10 ~]# cat /etc/X11/xorg.conf
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 367.44  (buildmeister@swio-display-x86-rhel47-01)  Wed Aug 17 22:54:35 PDT 2016

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
    FontPath        "/usr/share/fonts/default/Type1"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 72.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

[root@0cc47a8a1a10 ~]#

这是 /var/log/Xorg.5.log 的最后一部分:

[    37.157] (==) ModulePath set to "/usr/lib64/xorg/modules"
[    37.157] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[    37.157] (WW) Disabling Keyboard0
[    37.157] (WW) Disabling Mouse0
[    37.157] (II) Loader magic: 0x7fd419fc1020
[    37.157] (II) Module ABI versions:
[    37.157]    X.Org ANSI C Emulation: 0.4
[    37.157]    X.Org Video Driver: 19.0
[    37.157]    X.Org XInput driver : 21.0
[    37.157]    X.Org Server Extension : 9.0
[    37.157] (II) xfree86: Adding drm device (/dev/dri/card1)
[    37.157] (II) xfree86: Adding drm device (/dev/dri/card2)
[    37.157] (II) xfree86: Adding drm device (/dev/dri/card0)
[    37.157] (II) xfree86: Adding drm device (/dev/dri/card3)
[    37.157] (II) xfree86: Adding drm device (/dev/dri/card4)
[    37.165] (--) PCI: (0:2:0:0) 10de:1b80:10de:119e rev 161, Mem @ 0xcf000000/16777216, 0x383fe0000000/268435456, 0x383ff0000000/33554432, I/O @ 0x00006000/128, BIOS @ 0x????????/524288
[    37.165] (--) PCI: (0:3:0:0) 10de:1b80:10de:119e rev 161, Mem @ 0xcd000000/16777216, 0x383fc0000000/268435456, 0x383fd0000000/33554432, I/O @ 0x00005000/128, BIOS @ 0x????????/524288
[    37.165] (--) PCI:*(0:6:0:0) 1a03:2000:15d9:0852 rev 48, Mem @ 0xcb000000/16777216, 0xcc000000/131072, I/O @ 0x00004000/128, BIOS @ 0x????????/131072
[    37.165] (--) PCI: (0:131:0:0) 10de:1b80:10de:119e rev 161, Mem @ 0xfa000000/16777216, 0x387fe0000000/268435456, 0x387ff0000000/33554432, I/O @ 0x0000d000/128, BIOS @ 0x????????/524288
[    37.165] (--) PCI: (0:132:0:0) 10de:1b80:10de:119e rev 161, Mem @ 0xf8000000/16777216, 0x387fc0000000/268435456, 0x387fd0000000/33554432, I/O @ 0x0000c000/128, BIOS @ 0x????????/524288
[    37.165] (II) LoadModule: "glx"
[    37.165] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
[    37.171] (II) Module glx: vendor="NVIDIA Corporation"
[    37.171]    compiled for 4.0.2, module version = 1.0.0
[    37.171]    Module class: X.Org Server Extension
[    37.171] (II) NVIDIA GLX Module  367.44  Wed Aug 17 21:50:26 PDT 2016
[    37.171] (II) LoadModule: "nvidia"
[    37.171] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
[    37.171] (II) Module nvidia: vendor="NVIDIA Corporation"
[    37.171]    compiled for 4.0.2, module version = 1.0.0
[    37.171]    Module class: X.Org Video Driver
[    37.171] (II) NVIDIA dlloader X Driver  367.44  Wed Aug 17 21:28:13 PDT 2016
[    37.171] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[    37.171] (++) using VT number 1

[    37.171] (EE) No devices detected.
[    37.171] (EE)
Fatal server error:
[    37.171] (EE) no screens found(EE)
[    37.171] (EE)
Please consult the The X.Org Foundation support
         at http://wiki.x.org
 for help.
[    37.171] (EE) Please also check the log file at "/var/log/Xorg.5.log" for additional information.
[    37.171] (EE)

答案1

事实证明,Nvidia 驱动程序安装程序破坏了一些涉及 libglx.so 的文件。我不知道具体是哪些文件,将原始 libglx.so 复制到 Nvidia 保留的那个文件上也没有恢复。

使用 ”--no-opengl 文件“安装标志,当安装过程中提示覆盖 xconfig 时选择“否”可以解决此问题。

更详细地说,步骤如下:

  • 安装带有 Gnome 桌面的 CentOS 7
  • 启动后:
    • yum-y 更新
    • yum -y 安装内核开发 epel 发布版本
    • yum -y 安装 dkms gcc gcc-g++
    • 重新启动(以获取新内核)
  • 启动后:
    • sh latest_nvidia_driver.run --no-opengl-files
    • 当提示 xconfig 覆盖时选择“否”
    • systemctl set-default graphic.target(如果您的默认运行级别还不是图形)
    • 重启

相关内容