web-dev-qa-db-ja.com

Linuxで、複数のGPU(IntelおよびnVidia)上の複数のモニターでディスプレイジオメトリを正しく構成するにはどうすればよいですか?

トリプルモニターのセットアップが正しく機能するようにしたい。

私の設定は次のとおりです。

  • Linux Mint 16 x64
  • Intel Core i5-2500k
  • GeForce GTX 560 Ti Cu II
  • マザーボードに接続された右端のモニター(i5の統合グラフィックス)
  • グラフィックカードに接続された中央モニター
  • グラフィックカードに接続された左端のモニター

私は次のxorg.configを使用しています

Section "ServerFlags"
    Option "DefaultServerLayout" "PrimaryLayout"
    Option "Xinerama" "off"
EndSection

Section "Module"
    Load "glx"
EndSection

Section "InputDevice"
    Identifier     "Mouse"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    Identifier     "Keyboard"
    Driver         "kbd"
EndSection

Section "Device"
    Identifier "Intel HD Graphics 3000"
    Driver     "intel"
EndSection

Section "Device"
    Identifier     "Geforce GTX 560 Ti"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    Screen 0
EndSection

Section "Monitor"
    Identifier "AOC"
    Option "Primary" "true"
EndSection

Section "Monitor"
    Identifier "Samsung"
EndSection

Section "Monitor"
    Identifier "ViewSonic"
EndSection

Section "Screen"
    Identifier "Samsung"
    Device "Intel HD Graphics 3000"
    Monitor "Samsung"
    SubSection "Display"
        Depth 24
    EndSubSection
EndSection

Section "Screen"
    Identifier "AOC"
    Device "Geforce GTX 560 Ti"
    Monitor "AOC"
    SubSection "Display"
        Depth 24
    EndSubSection
EndSection

Section "Screen"
    Identifier "ViewSonic"
    Device "Geforce GTX 560 Ti"
    Monitor "ViewSonic"
    SubSection "Display"
        Depth 24
    EndSubSection
EndSection

Section "ServerLayout"
    Identifier    "PrimaryLayout"
    Screen        "AOC" 0 0 
    Screen        "ViewSonic" LeftOf "AOC"
    Screen        "Samsung" RightOf "AOC"
    InputDevice   "Keyboard" "CoreKeyboard"
    InputDevice   "Mouse" "CorePointer"
EndSection

Section "ServerLayout"
    Identifier "SingleLayout"
    Screen "AOC" 0 0
    InputDevice "Keyboard" "CoreKeyboard"
    InputDevice "Mouse" "CorePointer"
EndSection

これには次の効果があります。

  • 右端のモニターが機能しない
  • 中央と左側のモニターは期待どおりに機能します

もう少し情報:

  • 私はカーネルを使用しています3.11.0-12-generic
  • Nvidia独自のドライバーバージョンを使用しています331.67
7
ell

Slackwareでロープを学んでいたとき、ディストリビューションのインストール、構成、保守に関するこの優れた初心者向けガイドがありました。何年にもわたって多少変更されており、Debian&Co。とは関係がないように思われるかもしれませんが、それでも SlackBook は良い入門資料だと思います。

(私見)の判断に合格しないが、人々はxorgのマニュアルを完全に無視しているようだ。おそらくそれは、XorgがWindowsで慣れているように「自分自身を構成する」と彼らが信じさせられているためです。これは常に当てはまるわけではなく、デュアルモニターのセットアップ方法に関する情報はたくさんあります。私はこのサイトで非常によく似た問題について少なくとも2つの似たような質問に答えました。

その時の要点まで;

man xorg.conf

SERVERLAYOUT SECTION
(...)
Screen  screen-num "screen-id" position-information
(...)

詳細はmanページにあります。あなたが望むものは次のようになります:

Section "ServerLayout"
    Identifier      "Three monitors"
    Screen  0       "Screen0" 0 0
    Screen  1       "Screen1" RightOf "Screen0"
    Screen  2       "Screen2" RightOf "Screen1"
EndSection

チェックリスト:

  • 画面は正しいデバイスとモニター識別子を使用します
  • 画面には、少なくとも解像度と奥行きのあるディスプレイサブセクションがあります
  • 使用するデバイスのドライバーが読み込まれます

ノート:

デュアルヘッドビデオカード(デバイスセクション)には、バスやディスプレイモードなどの特別なオプションが必要な場合があります。過去に両方のヘッドに出力を「コピー」するために使用されたATIカード。これは、デバイスセクションで特定のオプションを渡すことで防止できました。 xorgドライバーのマニュアルページを使用してください。

Xorgの最近のバージョンでは、xrandrを使用して、複数のモニターを構成および有効にし、それらを相互に相対的に配置することができます。複数のモニターを構成するxorg.configを用意する必要はありませんが、より便利な場合があります。