在使用 GPU 但没有显示器的 Linux 服务器上进行渲染的最佳方法?

在使用 GPU 但没有显示器的 Linux 服务器上进行渲染的最佳方法?

我有一个渲染软件,更具体地说,它是一个渲染视频(保存渲染帧)的 Unity3D“游戏”。

不幸的是Unity3D不支持“无头”渲染(它可以在无头模式下运行,但在这种情况下它不渲染帧),因此它需要一个X服务器来创建窗口。

  • 我有一个 Debian Bullseye 服务器,带有 ~~Intel GPU (630)~~ NVidia GT1030 和专有驱动程序
  • 我没有任何显示器
  • 我无法插入诸如 HDMI 之类的假显示设备。
  • 它对性能至关重要,因此必须完全硬件加速,因此类似的解决方案xvfb不适合。

我还想在 Docker 中运行它,有时我需要查看现在使用 VNC 渲染的内容以进行调试。

据我了解,我需要:

  1. 在主机上运行 X 服务器,创建虚拟显示器
  2. 与 docker 容器共享主机的 X 服务器,在那里运行我的应用程序和 VNC 服务器

这是最好的方法吗?

我创建了一个虚拟显示:

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

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    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    20.0 - 120.0
    VertRefresh  30.0 - 120.0
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "NVIDIA GeForce GT 1030"
    Option      "ConnectedMonitor" "DFP"
    Option      "CustomEDID" "DFP-0:/etc/X11/EDID.bin"
    Option      "ConstrainCursor" "off"
    BusID       "PCI:01:0:0"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Device0"
    Monitor    "Monitor0"
    DefaultDepth     24
    Option      "TwinView" "0"
    Option      "metamodes" "DFP-0: 1280x1024 +0+0"
    SubSection "Display"
            Depth     24
    EndSubSection
EndSection

并开始X:

sudo X :0 -config /etc/X11/xorg.conf

它启动时没有任何错误,但似乎挂起(对 Ctrl+C 没有反应,杀死它的唯一方法是kill -9 PID)。

glxinfo不起作用:

$ DISPLAY=:0 glxinfo
name of display: :0

X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  110
  Current serial number in output stream:  111

但是,如果我指定显示器,xrandr则会显示其信息:

$ xrandr -d :0
Screen 0: minimum 8 x 8, current 1280 x 1024, maximum 32767 x 32767
DVI-D-0 connected primary 1280x1024+0+0 (normal left inverted right x axis y axis) 510mm x 290mm
   1920x1080     60.00 +  59.94    50.00    60.00    50.04  
   1680x1050     59.95  
   1440x900      59.89  
   1280x1024     75.02*   60.02  
   1280x960      60.00  
   1280x720      60.00    59.94    50.00  
   1024x768      75.03    70.07    60.00  
   800x600       75.00    72.19    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480       75.00    72.81    59.94    59.93  
HDMI-0 disconnected (normal left inverted right x axis y axis)

X 服务器日志看起来不错:

[   306.770] 
X.Org X Server 1.20.11
X Protocol Version 11, Revision 0
[   306.770] Build Operating System: linux Debian
[   306.770] Current Operating System: Linux home-server 5.10.0-9-amd64 #1 SMP Debian 5.10.70-1 (2021-09-30) x86_64
[   306.770] Kernel command line: BOOT_IMAGE=/vmlinuz-5.10.0-9-amd64 root=/dev/mapper/home--server--vg-root ro quiet
[   306.770] Build Date: 13 April 2021  04:07:31PM
[   306.770] xorg-server 2:1.20.11-1 (https://www.debian.org/support) 
[   306.770] Current version of pixman: 0.40.0
[   306.770]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[   306.770] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   306.770] (==) Log file: "/var/log/Xorg.0.log", Time: Thu Nov 18 21:49:50 2021
[   306.770] (++) Using config file: "/etc/X11/xorg.conf"
[   306.770] (==) ServerLayout "Layout0"
[   306.770] (**) |-->Screen "Screen0" (0)
[   306.770] (**) |   |-->Monitor "Monitor0"
[   306.770] (**) |   |-->Device "Device0"
[   306.770] (**) |-->Input Device "Keyboard0"
[   306.770] (**) |-->Input Device "Mouse0"
[   306.770] (==) Automatically adding devices
[   306.770] (==) Automatically enabling devices
[   306.770] (==) Automatically adding GPU devices
[   306.770] (==) Max clients allowed: 256, resource mask: 0x1fffff
[   306.770] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[   306.770]    Entry deleted from font path.
[   306.770] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[   306.770]    Entry deleted from font path.
[   306.770] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[   306.770]    Entry deleted from font path.
[   306.770] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[   306.770]    Entry deleted from font path.
[   306.770] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[   306.770]    Entry deleted from font path.
[   306.770] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[   306.770]    Entry deleted from font path.
[   306.770] (==) FontPath set to:
        /usr/share/fonts/X11/misc,
        built-ins
[   306.770] (==) ModulePath set to "/usr/lib/xorg/modules"
[   306.770] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[   306.770] (WW) Disabling Keyboard0
[   306.770] (WW) Disabling Mouse0
[   306.770] (II) Loader magic: 0x562334c16e40
[   306.770] (II) Module ABI versions:
[   306.770]    X.Org ANSI C Emulation: 0.4
[   306.770]    X.Org Video Driver: 24.1
[   306.770]    X.Org XInput driver : 24.1
[   306.770]    X.Org Server Extension : 10.0
[   306.771] (--) using VT number 3

[   306.771] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[   306.771] (II) xfree86: Adding drm device (/dev/dri/card0)
[   306.772] (--) PCI:*(1@0:0:0) 10de:1d01:1043:85f4 rev 161, Mem @ 0xa2000000/16777216, 0x90000000/268435456, 0xa0000000/33554432, I/O @ 0x00003000/128, BIOS @ 0x????????/131072
[   306.772] (II) LoadModule: "glx"
[   306.772] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[   306.772] (II) Module glx: vendor="X.Org Foundation"
[   306.772]    compiled for 1.20.11, module version = 1.0.0
[   306.772]    ABI class: X.Org Server Extension, version 10.0
[   306.772] (II) LoadModule: "nvidia"
[   306.772] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[   306.773] (II) Module nvidia: vendor="NVIDIA Corporation"
[   306.773]    compiled for 1.6.99.901, module version = 1.0.0
[   306.773]    Module class: X.Org Video Driver
[   306.773] (II) NVIDIA dlloader X Driver  470.86  Tue Oct 26 21:53:29 UTC 2021
[   306.773] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   306.773] (II) Loading sub module "fb"
[   306.773] (II) LoadModule: "fb"
[   306.773] (II) Loading /usr/lib/xorg/modules/libfb.so
[   306.773] (II) Module fb: vendor="X.Org Foundation"
[   306.773]    compiled for 1.20.11, module version = 1.0.0
[   306.773]    ABI class: X.Org ANSI C Emulation, version 0.4
[   306.773] (II) Loading sub module "wfb"
[   306.773] (II) LoadModule: "wfb"
[   306.773] (II) Loading /usr/lib/xorg/modules/libwfb.so
[   306.773] (II) Module wfb: vendor="X.Org Foundation"
[   306.773]    compiled for 1.20.11, module version = 1.0.0
[   306.773]    ABI class: X.Org ANSI C Emulation, version 0.4
[   306.773] (II) Loading sub module "ramdac"
[   306.773] (II) LoadModule: "ramdac"
[   306.773] (II) Module "ramdac" already built-in
[   306.773] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[   306.773] (==) NVIDIA(0): RGB weight 888
[   306.773] (==) NVIDIA(0): Default visual is TrueColor
[   306.773] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[   306.773] (**) NVIDIA(0): Option "ConstrainCursor" "off"
[   306.773] (**) NVIDIA(0): Option "ConnectedMonitor" "DFP"
[   306.773] (**) NVIDIA(0): Option "CustomEDID" "DFP-0:/etc/X11/EDID.bin"
[   306.773] (**) NVIDIA(0): Option "MetaModes" "DFP-0: 1280x1024 +0+0"
[   306.773] (**) NVIDIA(0): Enabling 2D acceleration
[   306.773] (**) NVIDIA(0): ConnectedMonitor string: "DFP"
[   306.773] (II) Loading sub module "glxserver_nvidia"
[   306.773] (II) LoadModule: "glxserver_nvidia"
[   306.773] (II) Loading /usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
[   306.777] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"
[   306.777]    compiled for 1.6.99.901, module version = 1.0.0
[   306.777]    Module class: X.Org Server Extension
[   306.777] (II) NVIDIA GLX Module  470.86  Tue Oct 26 21:51:04 UTC 2021
[   306.777] (II) NVIDIA: The X server supports PRIME Render Offload.
[   306.953] (--) NVIDIA(0): Valid display device(s) on GPU-0 at PCI:1:0:0
[   306.953] (--) NVIDIA(0):     DFP-0
[   306.953] (--) NVIDIA(0):     DFP-1
[   306.953] (**) NVIDIA(0): Using ConnectedMonitor string "DFP-0".
[   306.953] (II) NVIDIA(0): NVIDIA GPU NVIDIA GeForce GT 1030 (GP108-A) at PCI:1:0:0
[   306.953] (II) NVIDIA(0):     (GPU-0)
[   306.953] (--) NVIDIA(0): Memory: 2097152 kBytes
[   306.953] (--) NVIDIA(0): VideoBIOS: 86.08.0c.00.1a
[   306.953] (II) NVIDIA(0): Detected PCI Express Link width: 4X
[   306.954] (--) NVIDIA(GPU-0): AOC 2369M (DFP-0): connected
[   306.954] (--) NVIDIA(GPU-0): AOC 2369M (DFP-0): Internal TMDS
[   306.954] (--) NVIDIA(GPU-0): AOC 2369M (DFP-0): 600.0 MHz maximum pixel clock
[   306.954] (--) NVIDIA(GPU-0): 
[   306.954] (--) NVIDIA(GPU-0): DFP-1: disconnected
[   306.954] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[   306.954] (--) NVIDIA(GPU-0): DFP-1: 165.0 MHz maximum pixel clock
[   306.954] (--) NVIDIA(GPU-0): 
[   306.958] (II) NVIDIA(0): Validated MetaModes:
[   306.958] (II) NVIDIA(0):     "DFP-0:1280x1024+0+0"
[   306.958] (II) NVIDIA(0): Virtual screen size determined to be 1280 x 1024
[   306.961] (--) NVIDIA(0): DPI set to (63, 89); computed from "UseEdidDpi" X config
[   306.961] (--) NVIDIA(0):     option
[   306.961] (II) NVIDIA: Reserving 24576.00 MB of virtual memory for indirect memory
[   306.961] (II) NVIDIA:     access.
[   306.963] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
[   306.963] (II) NVIDIA(0):     may not be running or the "AcpidSocketPath" X
[   306.963] (II) NVIDIA(0):     configuration option may not be set correctly.  When the
[   306.963] (II) NVIDIA(0):     ACPI event daemon is available, the NVIDIA X driver will
[   306.963] (II) NVIDIA(0):     try to use it to receive ACPI event notifications.  For
[   306.963] (II) NVIDIA(0):     details, please see the "ConnectToAcpid" and
[   306.963] (II) NVIDIA(0):     "AcpidSocketPath" X configuration options in Appendix B: X
[   306.963] (II) NVIDIA(0):     Config Options in the README.
[   306.975] (II) NVIDIA(0): Setting mode "DFP-0:1280x1024+0+0"
[   306.998] (==) NVIDIA(0): Disabling shared memory pixmaps
[   306.998] (==) NVIDIA(0): Backing store enabled
[   306.998] (==) NVIDIA(0): Silken mouse enabled
[   306.998] (==) NVIDIA(0): DPMS enabled
[   306.998] (WW) NVIDIA(0): Option "TwinView" is not used
[   306.998] (II) Loading sub module "dri2"
[   306.998] (II) LoadModule: "dri2"
[   306.998] (II) Module "dri2" already built-in
[   306.998] (II) NVIDIA(0): [DRI2] Setup complete
[   306.998] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
[   306.998] (II) Initializing extension Generic Event Extension
[   306.998] (II) Initializing extension SHAPE
[   306.998] (II) Initializing extension MIT-SHM
[   306.998] (II) Initializing extension XInputExtension
[   306.999] (II) Initializing extension XTEST
[   306.999] (II) Initializing extension BIG-REQUESTS
[   306.999] (II) Initializing extension SYNC
[   306.999] (II) Initializing extension XKEYBOARD
[   306.999] (II) Initializing extension XC-MISC
[   306.999] (II) Initializing extension SECURITY
[   306.999] (II) Initializing extension XFIXES
[   306.999] (II) Initializing extension RENDER
[   306.999] (II) Initializing extension RANDR
[   306.999] (II) Initializing extension COMPOSITE
[   306.999] (II) Initializing extension DAMAGE
[   306.999] (II) Initializing extension MIT-SCREEN-SAVER
[   306.999] (II) Initializing extension DOUBLE-BUFFER
[   306.999] (II) Initializing extension RECORD
[   306.999] (II) Initializing extension DPMS
[   306.999] (II) Initializing extension Present
[   307.000] (II) Initializing extension DRI3
[   307.000] (II) Initializing extension X-Resource
[   307.000] (II) Initializing extension XVideo
[   307.000] (II) Initializing extension XVideo-MotionCompensation
[   307.000] (II) Initializing extension SELinux
[   307.000] (II) SELinux: Disabled on system
[   307.000] (II) Initializing extension GLX
[   307.000] (II) Initializing extension GLX
[   307.000] (II) Indirect GLX disabled.
[   307.000] (II) GLX: Another vendor is already registered for screen 0
[   307.000] (II) Initializing extension XFree86-VidModeExtension
[   307.000] (II) Initializing extension XFree86-DGA
[   307.000] (II) Initializing extension XFree86-DRI
[   307.000] (II) Initializing extension DRI2
[   307.000] (II) Initializing extension NV-GLX
[   307.000] (II) Initializing extension NV-CONTROL
[   307.000] (II) Initializing extension XINERAMA
[   307.019] (II) config/udev: Adding input device Power Button (/dev/input/event3)
[   307.019] (II) No input driver specified, ignoring this device.
[   307.019] (II) This device may have been added with another device file.
[   307.019] (II) config/udev: Adding input device Power Button (/dev/input/event2)
[   307.019] (II) No input driver specified, ignoring this device.
[   307.019] (II) This device may have been added with another device file.
[   307.019] (II) config/udev: Adding input device Sleep Button (/dev/input/event1)
[   307.019] (II) No input driver specified, ignoring this device.
[   307.019] (II) This device may have been added with another device file.
[   307.019] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=3 (/dev/input/event5)
[   307.019] (II) No input driver specified, ignoring this device.
[   307.019] (II) This device may have been added with another device file.
[   307.019] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=7 (/dev/input/event6)
[   307.019] (II) No input driver specified, ignoring this device.
[   307.019] (II) This device may have been added with another device file.
[   307.020] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=8 (/dev/input/event7)
[   307.020] (II) No input driver specified, ignoring this device.
[   307.020] (II) This device may have been added with another device file.
[   307.020] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=9 (/dev/input/event8)
[   307.020] (II) No input driver specified, ignoring this device.
[   307.020] (II) This device may have been added with another device file.
[   307.020] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=10 (/dev/input/event9)
[   307.020] (II) No input driver specified, ignoring this device.
[   307.020] (II) This device may have been added with another device file.
[   307.020] (II) config/udev: Adding input device ASRock LED Controller (/dev/input/event0)
[   307.020] (II) No input driver specified, ignoring this device.
[   307.020] (II) This device may have been added with another device file.
[   307.020] (II) config/udev: Adding input device ASRock LED Controller (/dev/input/js0)
[   307.020] (II) No input driver specified, ignoring this device.
[   307.020] (II) This device may have been added with another device file.
[   307.021] (II) config/udev: Adding input device HDA Intel PCH Front Mic (/dev/input/event10)
[   307.021] (II) No input driver specified, ignoring this device.
[   307.021] (II) This device may have been added with another device file.
[   307.021] (II) config/udev: Adding input device HDA Intel PCH Rear Mic (/dev/input/event11)
[   307.021] (II) No input driver specified, ignoring this device.
[   307.021] (II) This device may have been added with another device file.
[   307.021] (II) config/udev: Adding input device HDA Intel PCH Line (/dev/input/event12)
[   307.021] (II) No input driver specified, ignoring this device.
[   307.021] (II) This device may have been added with another device file.
[   307.021] (II) config/udev: Adding input device HDA Intel PCH Line Out (/dev/input/event13)
[   307.021] (II) No input driver specified, ignoring this device.
[   307.021] (II) This device may have been added with another device file.
[   307.021] (II) config/udev: Adding input device HDA Intel PCH Front Headphone (/dev/input/event14)
[   307.021] (II) No input driver specified, ignoring this device.
[   307.021] (II) This device may have been added with another device file.
[   307.021] (II) config/udev: Adding input device PC Speaker (/dev/input/event4)
[   307.021] (II) No input driver specified, ignoring this device.
[   307.021] (II) This device may have been added with another device file.
[   390.739] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
[   390.739] (II) NVIDIA(0):     may not be running or the "AcpidSocketPath" X
[   390.739] (II) NVIDIA(0):     configuration option may not be set correctly.  When the
[   390.739] (II) NVIDIA(0):     ACPI event daemon is available, the NVIDIA X driver will
[   390.739] (II) NVIDIA(0):     try to use it to receive ACPI event notifications.  For
[   390.739] (II) NVIDIA(0):     details, please see the "ConnectToAcpid" and
[   390.739] (II) NVIDIA(0):     "AcpidSocketPath" X configuration options in Appendix B: X
[   390.739] (II) NVIDIA(0):     Config Options in the README.
[   390.739] (--) NVIDIA(GPU-0): AOC 2369M (DFP-0): connected
[   390.739] (--) NVIDIA(GPU-0): AOC 2369M (DFP-0): Internal TMDS
[   390.739] (--) NVIDIA(GPU-0): AOC 2369M (DFP-0): 600.0 MHz maximum pixel clock
[   390.739] (--) NVIDIA(GPU-0): 
[   390.739] (--) NVIDIA(GPU-0): DFP-1: disconnected
[   390.739] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[   390.739] (--) NVIDIA(GPU-0): DFP-1: 165.0 MHz maximum pixel clock
[   390.739] (--) NVIDIA(GPU-0): 
[   390.760] (II) NVIDIA(0): Setting mode "DFP-0:1280x1024+0+0"
[   390.781] (==) NVIDIA(0): Disabling shared memory pixmaps
[   390.781] (==) NVIDIA(0): DPMS enabled
[   390.781] (II) Loading sub module "dri2"
[   390.781] (II) LoadModule: "dri2"
[   390.781] (II) Module "dri2" already built-in
[   390.781] (II) NVIDIA(0): [DRI2] Setup complete
[   390.781] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
[   390.781] (II) Initializing extension Generic Event Extension
[   390.781] (II) Initializing extension SHAPE
[   390.781] (II) Initializing extension MIT-SHM
[   390.781] (II) Initializing extension XInputExtension
[   390.781] (II) Initializing extension XTEST
[   390.781] (II) Initializing extension BIG-REQUESTS
[   390.782] (II) Initializing extension SYNC
[   390.782] (II) Initializing extension XKEYBOARD
[   390.782] (II) Initializing extension XC-MISC
[   390.782] (II) Initializing extension SECURITY
[   390.782] (II) Initializing extension XFIXES
[   390.782] (II) Initializing extension RENDER
[   390.782] (II) Initializing extension RANDR
[   390.782] (II) Initializing extension COMPOSITE
[   390.782] (II) Initializing extension DAMAGE
[   390.782] (II) Initializing extension MIT-SCREEN-SAVER
[   390.782] (II) Initializing extension DOUBLE-BUFFER
[   390.782] (II) Initializing extension RECORD
[   390.782] (II) Initializing extension DPMS
[   390.782] (II) Initializing extension Present
[   390.783] (II) Initializing extension DRI3
[   390.783] (II) Initializing extension X-Resource
[   390.783] (II) Initializing extension XVideo
[   390.783] (II) Initializing extension XVideo-MotionCompensation
[   390.783] (II) Initializing extension SELinux
[   390.783] (II) SELinux: Disabled on system
[   390.783] (II) Initializing extension GLX
[   390.783] (II) Initializing extension GLX
[   390.783] (II) Indirect GLX disabled.
[   390.783] (II) GLX: Another vendor is already registered for screen 0
[   390.783] (II) Initializing extension XFree86-VidModeExtension
[   390.783] (II) Initializing extension XFree86-DGA
[   390.783] (II) Initializing extension XFree86-DRI
[   390.783] (II) Initializing extension DRI2
[   390.783] (II) Initializing extension NV-GLX
[   390.783] (II) Initializing extension NV-CONTROL
[   390.783] (II) Initializing extension XINERAMA
[   390.801] (II) config/udev: Adding input device Power Button (/dev/input/event3)
[   390.801] (II) No input driver specified, ignoring this device.
[   390.801] (II) This device may have been added with another device file.
[   390.801] (II) config/udev: Adding input device Power Button (/dev/input/event2)
[   390.801] (II) No input driver specified, ignoring this device.
[   390.801] (II) This device may have been added with another device file.
[   390.802] (II) config/udev: Adding input device Sleep Button (/dev/input/event1)
[   390.802] (II) No input driver specified, ignoring this device.
[   390.802] (II) This device may have been added with another device file.
[   390.802] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=3 (/dev/input/event5)
[   390.802] (II) No input driver specified, ignoring this device.
[   390.802] (II) This device may have been added with another device file.
[   390.802] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=7 (/dev/input/event6)
[   390.802] (II) No input driver specified, ignoring this device.
[   390.802] (II) This device may have been added with another device file.
[   390.802] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=8 (/dev/input/event7)
[   390.802] (II) No input driver specified, ignoring this device.
[   390.802] (II) This device may have been added with another device file.
[   390.802] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=9 (/dev/input/event8)
[   390.802] (II) No input driver specified, ignoring this device.
[   390.802] (II) This device may have been added with another device file.
[   390.803] (II) config/udev: Adding input device HDA NVidia HDMI/DP,pcm=10 (/dev/input/event9)
[   390.803] (II) No input driver specified, ignoring this device.
[   390.803] (II) This device may have been added with another device file.
[   390.803] (II) config/udev: Adding input device ASRock LED Controller (/dev/input/event0)
[   390.803] (II) No input driver specified, ignoring this device.
[   390.803] (II) This device may have been added with another device file.
[   390.803] (II) config/udev: Adding input device ASRock LED Controller (/dev/input/js0)
[   390.803] (II) No input driver specified, ignoring this device.
[   390.803] (II) This device may have been added with another device file.
[   390.803] (II) config/udev: Adding input device HDA Intel PCH Front Mic (/dev/input/event10)
[   390.803] (II) No input driver specified, ignoring this device.
[   390.803] (II) This device may have been added with another device file.
[   390.803] (II) config/udev: Adding input device HDA Intel PCH Rear Mic (/dev/input/event11)
[   390.803] (II) No input driver specified, ignoring this device.
[   390.803] (II) This device may have been added with another device file.
[   390.804] (II) config/udev: Adding input device HDA Intel PCH Line (/dev/input/event12)
[   390.804] (II) No input driver specified, ignoring this device.
[   390.804] (II) This device may have been added with another device file.
[   390.804] (II) config/udev: Adding input device HDA Intel PCH Line Out (/dev/input/event13)
[   390.804] (II) No input driver specified, ignoring this device.
[   390.804] (II) This device may have been added with another device file.
[   390.804] (II) config/udev: Adding input device HDA Intel PCH Front Headphone (/dev/input/event14)
[   390.804] (II) No input driver specified, ignoring this device.
[   390.804] (II) This device may have been added with another device file.
[   390.804] (II) config/udev: Adding input device PC Speaker (/dev/input/event4)
[   390.804] (II) No input driver specified, ignoring this device.
[   390.804] (II) This device may have been added with another device file.

哪里有问题?

答案1

我的xorg.conf是这样的

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

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

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option         "XkbModel" "pc105"
    Option         "XkbLayout" "us"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    HorizSync    20.0 - 120.0
    VertRefresh  30.0 - 120.0
EndSection

Section "Device"
    Identifier  "Device0"
    Driver      "nvidia"
    VendorName  "NVIDIA Corporation"
    BoardName   "Quadro FX 380"
    Option      "ConnectedMonitor" "DFP"
    Option      "UseDisplayDevice" "DFP-0"
    Option      "CustomEDID" "DFP-0:/etc/X11/HPZ24nq.bin"
    BusID       "PCI:21:0:0"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Device0"
    Monitor    "Monitor0"
    DefaultDepth     24
    Option      "TwinView" "0"
    Option      "metamodes" "DFP-0: 1280x1024 +0+0"
    SubSection "Display"
            Depth     24
    EndSubSection
EndSection

您的计算机需要更改的参数至少有 BusID、DFP、DFP-0、/etc/X11/HPZ24nq.bin。

我使用了 edid 文件 HPZ24nq.bin,这是我从某个显示器获得的。您将能够设置 EDID 文件中支持的分辨率。您可以从显示器获取 EDID 文件read-edid

BusID 您可以通过 获得lspci。我不确定你是否需要那个。

相关内容