Обновление: проблема, кажется, происходит от LightDM. Если я начинаю сеанс с TTY с использованием startx
, экраны размещаются в соответствии с xorg.conf
. Но если я сделаю sudo start lightdm
, экраны станут линейными еще до входа в систему.
У меня есть один графический процессор (Nvidia NVS 510) с четырьмя подключенными мониторами. Я пытаюсь расположить их в макете 2х2. Тем не менее, каждый раз, когда я запускаю X, LightDM, кажется, сбрасывается в горизонтальное расположение 1x4.
Это система Ubuntu 14.04 с установленными проприетарными драйверами Nvidia. Я сгенерировал следующий xorg.conf
используя nvidia-settings
:
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 331.20 (buildd@roseapple) Mon Feb 3 15:07:22 UTC 2014
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection
Section "Files"
EndSection
Section "InputDevice"
Identifier "Mouse0"
[...]
EndSection
Section "InputDevice"
Identifier "Keyboard0"
[...]
EndSection
Section "Monitor"
Identifier "Monitor0"
[...]
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "NVS 510"
BusID "PCI:4:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-4"
Option "metamodes" "DP-4: nvidia-auto-select +1920+0, DP-5: nvidia-auto-select +0+0, DP-6: nvidia-auto-select +1920+1200, DP-7: nvidia-auto-select +0+1200"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Обратите внимание, что все дисплеи являются частью одного экрана X (по желанию), а макет указывается в параметре "метамод". Если я использую startx
, все работает правильно.
Тем не менее, LightDM загадочно сбрасывает раскладку в какой-то момент перед отображением экрана входа в систему.
Я вижу следующий фрагмент в начале Xorg.0.log
, правильно настраивая экраны:
[5601.023] (II) NVIDIA (0): проверенные метамоды: [5601.023] (II) NVIDIA (0): [5601.023] (II) NVIDIA (0):
«ДП-4: NVidia-автовыбор +1920 +0, ДП-5: NVidia-автовыбор +0 +0, ДП-6: NVidia-автовыбор +1920 +1200, ДП-7: NVidia-авто -select +0 +1200 "[5601.023] (II) NVIDIA (0): размер виртуального экрана определен как 3840 x 2400
Но с LightDM я получаю в журнале следующее (с X -logverbose 6
):
[ 1022.497] (II) XINPUT: Adding extended input device "HP WMI hotkeys" (type: KEYBOARD, id 12)
[ 1022.497] (**) Option "xkb_rules" "evdev"
[ 1022.497] (**) Option "xkb_model" "pc105"
[ 1022.497] (**) Option "xkb_layout" "us"
[ 1022.497] (II) XKB: Reusing cached keymap
[ 1023.181] (II) NVIDIA(0): XRRSetCrtcConfig(screen:0 crtc:2 position:0,0 mode:null rotation:0x01 output:null)
[ 1023.194] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-5)
[ 1023.194] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-4)
[ 1023.194] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-7)
[ 1023.194] (II) NVIDIA(0): Setting mode "DP-5: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-4: nvidia-auto-select @1920x1200 +1920+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-7: nvidia-auto-select @1920x1200 +0+1200 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}"
[ 1023.644] (II) NVIDIA(0): XRRSetCrtcConfig(screen:0 crtc:3 position:0,0 mode:null rotation:0x01 output:null)
[ 1023.646] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-5)
[ 1023.646] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-4)
[ 1023.646] (II) NVIDIA(0): Setting mode "DP-5: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-4: nvidia-auto-select @1920x1200 +1920+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}"
[ 1023.970] (II) NVIDIA(0): XRRSetScreenSize(screen:0 size:7680x1200 sizeMM:2032x318)
[ 1023.987] (==) NVIDIA(0): Using 8388608 bytes for software rendering cache
[ 1024.050] (II) NVIDIA(0): XRRSetCrtcConfig(screen:0 crtc:2 position:3840,0 mode:1920x1200 rotation:0x01 output:DP-6)
[ 1024.053] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-5)
[ 1024.053] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-4)
[ 1024.053] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-6)
[ 1024.053] (II) NVIDIA(0): Setting mode "DP-5: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-4: nvidia-auto-select @1920x1200 +1920+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-6: nvidia-auto-select @1920x1200 +3840+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}"
[ 1024.394] (II) NVIDIA(0): XRRSetCrtcConfig(screen:0 crtc:3 position:5760,0 mode:1920x1200 rotation:0x01 output:DP-7)
[ 1024.397] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-5)
[ 1024.397] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-4)
[ 1024.397] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-6)
[ 1024.397] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-7)
[ 1024.397] (II) NVIDIA(0): Setting mode "DP-5: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-4: nvidia-auto-select @1920x1200 +1920+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-6: nvidia-auto-select @1920x1200 +3840+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-7: nvidia-auto-select @1920x1200 +5760+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}"
[ 1024.853] (II) NVIDIA(0): XRRSetCrtcConfig(screen:0 crtc:1 position:0,0 mode:1920x1200 rotation:0x01 output:DP-4)
[ 1024.856] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-5)
[ 1024.856] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-4)
[ 1024.856] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-6)
[ 1024.856] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-7)
[ 1024.856] (II) NVIDIA(0): Setting mode "DP-5: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-4: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-6: nvidia-auto-select @1920x1200 +3840+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-7: nvidia-auto-select @1920x1200 +5760+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}"
[ 1024.920] (II) NVIDIA(0): XRRSetCrtcConfig(screen:0 crtc:0 position:1920,0 mode:1920x1200 rotation:0x01 output:DP-5)
[ 1024.923] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-5)
[ 1024.923] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-4)
[ 1024.923] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-6)
[ 1024.923] (II) NVIDIA(0): Screen transformation disabled for HP Z24i (DFP-7)
[ 1024.923] (II) NVIDIA(0): Setting mode "DP-5: nvidia-auto-select @1920x1200 +1920+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-4: nvidia-auto-select @1920x1200 +0+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-6: nvidia-auto-select @1920x1200 +3840+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}, DP-7: nvidia-auto-select @1920x1200 +5760+0 {ViewPortIn=1920x1200, ViewPortOut=1920x1200+0+0}"
Все мои файлы конфигурации LightDM являются стандартными, за исключением 90-nvidia.conf
который, вероятно, был установлен проприетарными драйверами Nvidia:
# ls /usr/share/lightdm/lightdm.conf.d/
50-greeter-wrapper.conf
50-guest-wrapper.conf
50-ubuntu.conf
50-unity-greeter.conf
50-xserver-command.conf
90-nvidia.conf
# ls /etc/lightdm/
users.conf
Кроме того, я попытался удалить 90-nvidia.conf
но это не изменило поведение.