X サーバーに NVIDIA カードを強制的に使用させるにはどうすればよいですか?

X サーバーに NVIDIA カードを強制的に使用させるにはどうすればよいですか?

ドッキング ステーションに外部モニターを 2 台接続しています。そのうち 1 台しか動作しません。

2 番目のモニターを駆動するには、NVidia アダプターを使用する必要があることはほぼ確実です。

以前は、独自の NVIDIA ドライバーを使用していたときに動作していました。nouveau に切り替える必要がありました (Xephyr は独自のドライバーでは OpenGL をサポートしませんでした)。

Xorg.0.log で確認できます:

[     4.367] (--) PCI:*(0:0:2:0) 8086:0416:1028:05cc rev 6, Mem @ 0xf5400000/4194304, 0xd0000000/268435456, I/O @ 0x0000f000/64
[     4.367] (--) PCI: (0:1:0:0) 10de:0ff6:1028:15cc rev 161, Mem @ 0xf4000000/16777216, 0xe0000000/268435456, 0xf0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/524288

Xorg は nvidia アダプター (PC: 1:0:0) を認識しますが、nouveau ドライバーをロードしません。強制的にロードするにはどうすればよいでしょうか?

注意: 独自のドライバーに戻すことはできません。

ハードウェア: ドッキングステーション付きノートパソコン Dell M4800

$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107GLM [Quadro K1100M] (rev a1)

dmesg:http://pastebin.com/9J0pq6tn

Xorg.0.log:http://pastebin.com/NWj5tsS6

2 つの動作モニターを揃える xrandr コマンド:

xrandr \
  --output HDMI1 --off \
  --output VIRTUAL1 --off \
  --output DP1 --mode 1920x1080 --pos 1920x0 --rotate left 
  --output eDP1 --mode 1920x1080 --pos 0x760 --rotate normal --dpi 150/eDP1\
  --output VGA1 --off

(eDP1は内蔵モニター、DP1は外付けモニター)

以前は独自のドライバーで動作していた xrandr コマンド:

xrandr \
  --output VIRTUAL1 --off \
  --output DP1 --off \
  --output eDP1 --mode 1920x1080 --pos 0x840 --rotate normal \
  --output HDMI1 --off \
  --output VGA1 --off \
  --output DP-5 --off \
  --output DP-4 --off \
  --output DP-3 --mode 1920x1080 --pos 1920x0 --rotate left \
  --output DP-2 --mode 1920x1080 --pos 3000x552 --rotate normal \
  --output DP-1 --off \
  --output DP-0 --off

独自仕様のドライバーのポート DP-3 は現在 DP1 という名前になっています (おそらく Intel ドライバーによるものでしょう)。

専用ドライバのポートDP-2は私が使いたいものです

$ xrandr -q
Screen 0: minimum 8 x 8, current 3000 x 1920, maximum 32767 x 32767
eDP1 connected 1920x1080+0+760 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.04*+  40.03    59.93  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1440x900      59.89  
   1280x960      60.00  
   1368x768      60.00  
   1360x768      59.80    59.96  
   1152x864      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 connected 1080x1920+1920+0 left (normal left inverted right x axis y axis) 509mm x 286mm
   1920x1080     60.00*+
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   640x480       75.00    60.00  
   720x400       70.08  
HDMI1 disconnected (normal left inverted right x axis y axis)
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

HDMI1とVGA1は使用できません(ドッキングステーションによってブロックされています)

ドッキング ステーションを取り外そうとしましたが、同じ問題が発生しました。Intel ドライバーだけでは 3 つのビデオ出力を駆動できませんでした。

OSはLubuntu 16.04(15.10からアップグレード)

答え1

これで問題が解決するかどうかは100%確信できませんが、このUbuntuのドキュメントをご覧くださいハイブリッド グラフィックスと、スイッチを使用してさまざまなカードをアクティブ化する方法について説明します。

ATI ではなく Intel ドライバーが失われ続けるハイブリッド ATI Sony ラップトップを使用しようとしたときに、この問題が解決しました。

それが役に立てば幸い!

答え2

犯人が見つかりました。次の 2 つのファイルがありました:

/etc/modprobe.d/nvidia-352_hybrid.conf
/etc/modprobe.d/nvidia-346_hybrid.conf

どちらもblacklist nouveaualias nouveau offnouveau ドライバーの読み込みを妨げていました。

これら 2 つを削除すると、すべての出力を確認し、3 つのモニターすべてを構成できるようになりました。

関連情報