LightDM mudando misteriosamente o layout do monitor

3

Atualização: A questão parece ter origem no LightDM. Se eu iniciar minha sessão a partir de um TTY usando startx , as telas serão exibidas de acordo com xorg.conf . Mas se eu fizer sudo start lightdm , as telas se tornam lineares mesmo antes de fazer o login.

Eu tenho uma única GPU (Nvidia NVS 510) com quatro monitores conectados a ela. Estou tentando organizá-los em um layout 2x2. No entanto, toda vez que eu inicio o X, o LightDM parece redefinir para um layout horizontal de 1x4.

Este é um sistema Ubuntu 14.04 com drivers proprietários da Nvidia instalados. Eu gerou o seguinte xorg.conf usando 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

Observe que todas as exibições fazem parte de uma única tela X (conforme desejado) e o layout é especificado na opção "metamodes". Se eu usar startx , tudo funcionará corretamente.

No entanto, LightDM parece redefinir o layout misteriosamente em algum momento antes de exibir a tela de login.

Eu vejo o snippet a seguir no início de Xorg.0.log , configurando as telas corretamente:

[ 5601.023] (II) NVIDIA(0): Validated MetaModes: [ 5601.023] (II) NVIDIA(0): [ 5601.023] (II) NVIDIA(0):
"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" [ 5601.023] (II) NVIDIA(0): Virtual screen size determined to be 3840 x 2400

Mas com o LightDM, recebo o seguinte mais tarde no log (com 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}"

Todos os meus arquivos de configuração LightDM são padrão, exceto por 90-nvidia.conf , que provavelmente foi instalado por drivers proprietários da 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

Além disso, tentei remover 90-nvidia.conf , mas isso não alterou o comportamento.

    
por mtoossi 01.10.2014 / 00:01

3 respostas

3

Acontece que unity-greeter , que é o indicador padrão do LightDM, aplica-se ao Unity para exibir as configurações assim que é iniciado. Eu configurei o layout do meu monitor nas configurações de exibição do Unity, além de xorg.conf , mas isso não ajuda

Como estou usando um gerenciador de janelas diferente (i3), unity-settings-daemon não está em execução e isso parece fazer com que o greeter volte para o layout horizontal, substituindo o xorg.conf solicitado e ignorando as configurações de exibição do Unity.

    
por 01.10.2014 / 03:24
0

Acho que há algo errado com o current X-org ou com os drivers e softwares atuais da NVidia, ou com versões de 64 bits.

Eu tive um problema de simiar (não ler configurações?) com NVidia Quadro NVS140M em Debian de 64 bits.

Foi algo errado com as configurações de vídeo padrão. Eu tinha uma cor horrível de matiz offset (faces azuis, árvores vermelhas ou algo parecido). Eu era capaz de corrigi-los com o aplicativo nvidia-settings, mas as cores ficaram loucas após o reinício, até que eu comecei a configuração nvidia novamente. Quando eu comecei - parecia que o arquivo de configuração foi lido e as cores foram configuradas novamente sem qualquer alteração, apenas depois de iniciar o nvidia-settings.

Há alguns anos, eu usava o mesmo hardware com um driver antigo, linux mais antigo (acho que era o SuSE) e era uma versão de 32 bits. Talvez tente desinstalar o xorg ou o driver de vídeo e tente alguma versão mais antiga. Eu acho que essa solução não é desejável também, mas ... eu não tenho outras idéias.

E mais uma dica para o futuro - da próxima vez, considere o uso de uma distribuição de Linux mais "séria", como o SuSE Enterprise ou talvez o Debian 6.

    
por 01.10.2014 / 00:34
-1

Eu encontrei esta lista de solução de problemas, com uma possível solução para o seu problema. Eu também tenho o mesmo, LigthDM troca a ordem dos monitores.

    
por 20.01.2017 / 18:38