Ubuntu 18.04 双显示器,其中一个显示器通过 KVM 切换器(键盘视频鼠标切换器)切换

Ubuntu 18.04 双显示器,其中一个显示器通过 KVM 切换器(键盘视频鼠标切换器)切换

我有两台电脑(主要区别在于显卡主电脑有 Nvidia GTX 1070 Ti,副电脑有 Intel HD630),升级后可以使用两台显示器。只有一台显示器通过 kvm 切换器切换。在一台电脑(主台式机有 Nvidia GTX 1070)上,当我从副电脑切换回主电脑时,出现了问题,然后通过 KVM 切换器切换的屏幕不再被检测到。直到秋天,我还有另一台同样配备 Intel 显卡的 PC,在这种情况下没有出现任何问题。副电脑也没有问题。我尝试分配第二台显示器的 EDID,但没有帮助。

从主计算机附加 /etc/X11/xorg.conf,它(应该)适用于两个显示器。它一直有效,直到我将计算机切换为 DP-0(Dispalyport)显示器。

    # nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 440.64

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

Section "Files"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
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"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "DELL U2715H"
    HorizSync       30.0 - 113.0
    VertRefresh     56.0 - 86.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1070 Ti"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-2"
    Option         "metamodes" "DP-0: nvidia-auto-select +0+0, HDMI-0: nvidia-auto-select +2560+0"

    Option         "CustomEDID" "DP-0:/etc/X11/edid-2717.bin"
    Option         "IgnoreEDID" "false"
    Option         "UseEDID" "true"

    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

答案1

我必须将每个显示器的 EDID.bin 保存到一个文件中,并在配置中使用它。通常这应该可以在 xorg.conf 中实现,但对我来说,只有文件 /usr/share/X11/xorg.conf.d/10-nvidia.conf 有效。

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration"
    ModulePath "/usr/lib/x86_64-linux-gnu/nvidia/xorg"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1070 Ti"
    Option         "ConnectedMonitor" "HDMI-0,DP-0" 
    Option         "CustomEdid" "HDMI-0:/etc/X11/edid.bin.DP-0:/etc/X11/edid-2717.bin"
    Option         "IgnoreEDID" "false"
    Option         "UseEDID" "true" 
EndSection


Section "Screen"
    Identifier "Screen0"
    Device "Device0"
    Monitor "Monitor0"
    Option "metamodes" "HDMI-0: 2560x1440  +0+0, DP-0: 2560x1440  +2560 +0"
    DefaultDepth    24
    SubSection     "Display"
               Depth       24
    EndSubSection

EndSection

现在一切正常。但请注意,如果您更改 nvidia 驱动程序,10-nvidia.conf 将被覆盖!

相关内容