Configuração triplo do monitor no linux

2

Espero que haja alguns gurus xorg por aí.

Estou tentando obter uma configuração de três monitores trabalhando no linux. Eu tenho 2 monitores LCD e uma tv, todas as resoluções diferentes. Eu estou usando 2 placas de vídeo; uma 9800 GTX e 7900Gt.

Eu vi muitos posts diferentes sobre pessoas tentando fazer isso funcionar, e em todos os casos, eles desistiram ou a Xinerama resolveu magicamente todos os seus problemas.

Basicamente, meu principal problema é que não consigo fazer o Xinerama funcionar. Toda vez que eu ligo nas opções, minha máquina fica presa em um ciclo de inicialização sem fim. Se eu desabilitar o Xinerama, eu só tenho três telas Xorg, mas não consigo arrastar as janelas de uma para a outra.

Eu posso pegar os 2 lcds no Twinview, e a tv em uma tela separada do Xorg não é problema. Mas eu realmente não gosto dessa solução. Eu prefiro tê-los todos em telas separadas e costurá-los juntos com o Xinerama.

Alguém já fez isso?

Aqui está o meu xorg.conf para referência.

p.s. Isso me levou todos os 30 segundos para configurar no Windows XP! p.s. Eu vi em algum lugar que talvez o randr possa resolver meus problemas? Mas não tenho certeza de como?

Section "Monitor"
 Identifier "Main1"
 VendorName "Acer"
 ModelName "H233H"
 HorizSync 40-70
 VertRefresh 60
 Option "dpms"
EndSection

#Section "Monitor"
# Identifier "Main2"
# VendorName "Acer"
# ModelName "AL2216W"
# HorizSync 40-70
# VertRefresh 60
# Option "dpms"
#EndSection

Section "Monitor"
 Identifier "Projector"
 VendorName "BenQ"
 ModelName "W500"
 HorizSync 44.955-45
 VertRefresh 59.94-60
 Option "dpms"
EndSection

Section "Device"
 Identifier "Card1"
 Driver "nvidia"
 VendorName "nvidia"
 BusID "PCI:5:0:0"
 BoardName "nVidia Corporation G92 [GeForce 9800 GTX+]"
 Option "ConnectedMonitor" "DFP,DFP"
 Option "NvAGP" "0"
 Option "NoLogo" "True"
 #Option "TVStandard" "HD720p"
EndSection

Section "Device"
 Identifier "Card2"
 Driver "nvidia"
 VendorName "nvidia"
 BusID "PCI:4:0:0"
 BoardName "nVidia Corporation G71 [GeForce 7900 GT/GTO]"
 Option "NvAGP" "0"
 Option "NoLogo" "True"
 Option "TVStandard" "HD720p"
EndSection

Section "Module"
 Load "glx"
EndSection

Section "Screen"
 Identifier "ScreenMain-0"
 Device "Card1-0"
 Monitor "Main1"
 DefaultDepth 24
 Option "Twinview"
 Option "TwinViewOrientation" "RightOf"
 Option "MetaModes"   "DFP-0: 1920x1080; DFP-1: 1680x1050"
 Option "HorizSync"   "DFP-0: 40-70; DFP-1: 40-70"
     Option "VertRefresh" "DFP-0: 60; DFP-1: 60"
 #SubSection "Display"
        #    Depth           24
        #    Virtual         4880 1080
        #EndSubSection
EndSection

Section "Screen"
 Identifier "ScreenProjector"
 Device "Card2"
 Monitor "Projector"
 DefaultDepth 24
 Option "MetaModes"   "TV-0: 1280x720"
 Option "HorizSync"   "TV-0: 44.955-45"
    Option "VertRefresh" "TV-0: 59.94-60"
EndSection

Section "ServerLayout"
     Identifier  "BothTwinView"
     Screen      "ScreenMain-0"
 Screen      "ScreenProjector" LeftOf "ScreenMain-0"
     #Option     "Xinerama" "on" # most important option let you window expand to three monitors
EndSection
    
por Brendan Abel 18.04.2010 / 14:38

4 respostas

2

Então aqui está o meu trabalho xorg.conf para uma configuração de três monitores. É configurado como duas telas, que eu não gostei, mas agora estou muito feliz com isso. Ele me permite executar os dois CDs como uma configuração normal de dois monitores, e ainda exibir filmes e outras coisas no meu projetor, tudo a partir do mesmo computador. Também é bom que eu possa trabalhar na configuração de dois monitores, sem ter que ligar o projetor, porque uma janela ocasionalmente é ativada na tela, como se todos estivessem no mesmo xscreen.

Tecnicamente, eu poderia rodar um quarto monitor! Eu acho que estou mais propenso a investir em uma nova CPU e placa-mãe antes de tentar isso, no entanto. Depende de quanto tempo o Starcraft 2 será lançado.

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 1.0  (buildd@crested)  Sun Feb  1 20:25:37 UTC 2009
# edited by me (brendan) 2010-04-18


#   NVIDIA magic (something about glx-new?)
Section "Module"
    Load           "glx"
EndSection

Section "Extensions"
    Option         "Composite" "Enable"
EndSection



#   Keyboards and Mice
Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
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




#   Physical Monitors:
Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Acer"
    ModelName      "Acer H233H"
    HorizSync       40.0 - 70.0
    VertRefresh     60.0
EndSection

Section "Monitor"
    Identifier      "Monitor1"
    VendorName     "Acer"
    ModelName      "Acer AL2216W"
    HorizSync       40.0 - 70.0
    VertRefresh     60.0
EndSection

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "BenQ"
    ModelName      "BenQ W500"
    HorizSync       44.955 - 45.0
    VertRefresh     59.94 - 60.0
EndSection




#   Physical Video Cards/Ports:
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GTX+"
#    Screen          0
    BusID          "PCI:5:0:0"
EndSection

Section "Device"
    Identifier    "Device2"
    Driver        "nvidia"
    VendorName    "nVidia Corporation"
    BoardName     "GeForce 7900 GT/GTO"
    BusID         "PCI:4:0:0"
    Option        "TVStandard" "HD720p"
EndSection




####    Default 3-monitor Layout 'default'

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

Section "ServerFlags"
    Option         "Xinerama" "0"
EndSection


#   Virtual Screens
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
#    Option         "NoTwinViewXineramaInfo"
    Option         "metamodes" "DFP-0: 1920x1080 +1680+0, DFP-1: 1680x1050 +0+30"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen2"
    Device         "Device2"
    Monitor        "Monitor2"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "metamodes" "1280x720"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection
    
por 23.04.2010 / 08:53
2

Scarily você e eu temos quase a mesma configuração. Eu tenho um 9800GTX Ultra e um 7900GS KO. Meu problema é que o Xinerama não funciona com GPUs tão diferentes. O Xrandr foi projetado para substituir o xinerama, mas uma das maiores características do xinerama (telas de junção juntas) não foi mantida por algum motivo.

Usando a abordagem nvidia, tenho basicamente o que você escolheu; monitores duplos + outro monitor. Meu problema é que, usando essa abordagem, nenhum dos gerenciadores de janelas pode determinar que há, na verdade, dois monitores à esquerda e, assim, janelas maximizadas (e coisas como o painel) são esticadas em ambos os monitores

Eu estava esperando que nouveau fosse meu cavaleiro de armadura brilhante, mas estranhamente, não importa o que eu faça, não consigo nem mesmo um monitor duplo funcionar usando os drivers nouveau, usando várias versões (os padrões, de um PPA) da fonte).

Eu conheço pelo menos algumas outras pessoas que têm configurações semelhantes a nós, pelo menos um amigo conseguiu que sua configuração trabalhasse um pouco com o uso do fakexinerama, que basicamente fica no servidor X sobre os monitores para forçá-lo a funcionar. / p>

Espero que minha contribuição ajude você a encontrar o caminho para uma solução melhor. Por favor, mantenha-nos atualizados se você encontrar algo novo!

    
por 12.05.2010 / 03:45
1

Eu tive o mesmo problema, 4 monitores, 2 placas de vídeo idênticas e fui forçado a ter 2 Xscreens.

A solução que encontrei significou comprar algum hardware, mas está funcionando bem agora (monitores de 30 ", orientação vertical, Slackware64). Parece que o X-windows precisa ter todos os monitores em um determinado Xsceen na mesma placa de vídeo Se você tentar com sua configuração, você verá que você não pode ter 1 monitor de cada placa de vídeo como 1 Xscreen, e o segundo em cada placa de vídeo como outra tela X. Eles devem estar na mesma placa de vídeo.

Então eu comprei uma placa de vídeo, uma MSI Radeon HD6990, que tem 4 portas mini-display e 1 porta DVI de link duplo. Eu tive que usar as portas mini-dp em todos os três monitores - usando a porta DVI para um dos monitores significava comprar um adaptador ativo de link duplo por US $ 99,00. Note que o adaptador ativo que vem com a placa de vídeo diz que está ativo diretamente nela, mas é um adaptador ativo single-link , uma distinção que me escapou até que eu vi uma imagem do dual-link link active dvi adapter - que possui um cabo usb para alimentação assim como um cabo dp. O cabo fornecido com o cartão irá funcionar , mas limita-o a uma resolução de tela muito menor.

Isto é um aparte, mas enquanto corro com 2 Xscreens, só encontrei 2 programas Linux que podem alternar entre diferentes ecrãs X: o Gimp tem um dos menus, mas só muda o ecrã gráfico principal para o outro Xscreen --menus ficar parado, e XEmacs, que tem no menu e funciona muito bem.

    
por 15.09.2011 / 14:55
0

Passei um bom tempo resolvendo esse problema para o meu sistema Red Hat EL5 com uma cabeça dupla ATI Radeon 6350. Eu poderia arrastar os ícones de uma tela para outra, mas ainda tinha duas barras de ativação em cada tela e não conseguia arrastar as janelas de uma tela para a outra. O que eu precisava era da seguinte entrada na minha seção "ServerLayout" do meu arquivo xorg.conf.

Opção "Xinerama"

Agora eu tenho apenas uma barra e posso arrastar janelas por cima.

    
por 22.05.2012 / 09:48