LINUX.ORG.RU

3 монитора на 2 видеокартах Ubuntu

 , , ,


1

1

Всем привет, очень хочется быть супер хакером, а 3 монитора настроить не могу, нужна ваша помощь.

Есть 2 видеокарты:

lspci -nn | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0102] (rev 09)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation NV43 [GeForce 6600] [10de:0141] (rev a2)

К intel подключено 2 монитора в hdmi и в vga по 1 штуке, в nvidi'у подключен 1 монитор в VGA.

xrandr -q
Screen 0: minimum 320 x 200, current 3860 x 1600, maximum 8192 x 8192
VGA-1 connected 1680x1050+900+231 (normal left inverted right x axis y axis) 474mm x 296mm
   1680x1050     59.95*+
   1600x1200     60.00  
   1280x1024     75.02    60.02  
   1440x900      74.98    59.89  
   1280x960      60.00  
   1152x864      75.00  
   1280x720      60.00  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   640x480       75.00    72.81    66.67    59.94  
   720x400       70.08  
HDMI-1 connected 900x1600+0+0 left (normal left inverted right x axis y axis) 443mm x 249mm
   1600x900      59.98*+
   1920x1080     60.00    59.94  
   1280x1024     60.02  
   1280x960      60.00  
   1152x864      75.00  
   1280x720      60.00    59.94  
   1152x720      59.97  
   1024x768      75.03    60.00  
   832x624       74.55  
   800x600       75.00    60.32  
   720x480       60.00    59.94  
   640x480       75.00    60.00    59.94  
   720x400       70.08  
DP-1 disconnected (normal left inverted right x axis y axis)
VGA-1-2 connected 1280x1024+2580+231 (normal left inverted right x axis y axis) 376mm x 301mm
   1280x1024     60.02*+  75.02  
   1152x864      75.00  
   1024x768      75.03    60.00  
   832x624       74.55  
   800x600       75.00    60.32  
   640x480       75.00    59.94  
   720x400       70.08  
DVI-I-1-1 disconnected (normal left inverted right x axis y axis)
TV-1-1 disconnected (normal left inverted right x axis y axis)
  1280x1024 (0x45) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1280x1024 (0x46) 135.000MHz +HSync +VSync
        h: width  1280 start 1296 end 1440 total 1688 skew    0 clock  79.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  75.02Hz
  1152x864 (0x47) 108.000MHz +HSync +VSync
        h: width  1152 start 1216 end 1344 total 1600 skew    0 clock  67.50KHz
        v: height  864 start  865 end  868 total  900           clock  75.00Hz
  1024x768 (0x48) 78.750MHz +HSync +VSync
        h: width  1024 start 1040 end 1136 total 1312 skew    0 clock  60.02KHz
        v: height  768 start  769 end  772 total  800           clock  75.03Hz
  1024x768 (0x49) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  832x624 (0x4a) 57.284MHz -HSync -VSync
        h: width   832 start  864 end  928 total 1152 skew    0 clock  49.73KHz
        v: height  624 start  625 end  628 total  667           clock  74.55Hz
  800x600 (0x4b) 49.500MHz +HSync +VSync
        h: width   800 start  816 end  896 total 1056 skew    0 clock  46.88KHz
        v: height  600 start  601 end  604 total  625           clock  75.00Hz
  800x600 (0x4c) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  640x480 (0x4d) 31.500MHz -HSync -VSync
        h: width   640 start  656 end  720 total  840 skew    0 clock  37.50KHz
        v: height  480 start  481 end  484 total  500           clock  75.00Hz
  640x480 (0x4e) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  720x400 (0x4f) 28.320MHz -HSync +VSync
        h: width   720 start  738 end  846 total  900 skew    0 clock  31.47KHz
        v: height  400 start  412 end  414 total  449           clock  70.08Hz

Все настраивал стандартной утилитой и мониторы определяются и даже все настраивается, единственная проблема монитор который подцеплен через nvidia почему-то не показывает ничего кроме курсора мыши, я так понимаю там не стартуют иксы. Что делать подскажите пожалуйста.

Так выглядит мой /etc/X11/xorg.conf

Section "Device"
    Identifier "NvidiaCard"
    Driver "nouveau"    
    BusID "PCI:0@0:2:0"
EndSection

Section "Device"
    Identifier "IntelCard"
    Driver "nouveau"
    BusID "PCI:1:0:0"
EndSection

Section "ServerFlags"
        Option  "xinerama"  "on"
EndSection

Вот ось на всякий:

Description:	Ubuntu 16.04.3 LTS
Release:	16.04
Codename:	xenial

Скрин демонстрирует наглядно в чем проблема, на скрине видно что 3-й монитор(3 vga nvidia) работает, но так только если делаешь принтскрин, по факту монитор полностью черный и видно только курсор.


lspci показывает nvidia и интел а конфиге оба драйвера nouveau. Должно быть чтото вроде этого:

Section "Device"
    Identifier "NvidiaCard"
    Driver "nouveau"    
    BusID "PCI:1:0:0"
EndSection

Section "Device"
    Identifier "IntelCard"
    Driver "intel"
    BusID "PCI:0:2:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "NvidiaCard"
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "IntelCard"
EndSection

Section "ServerLayout"
    Identifier "layout1"

    Screen      0  "Screen0"
    Screen      1  "Screen1" LeftOf  "Screen0"

    InputDevice "Mouse PS/2 with whell" "CorePointer"
    InputDevice "Keyboard" "CoreKeyboard"

    Option "Xinerama" "1"
EndSection

Но это конфиг не полный и скорее всего не заработает, нужно смотреть логи и допиливать

zaz ★★★★ ()
Ответ на: комментарий от zaz

Спасибо за помощь, ваш вариант подправил под свои параметры и попробовал и даже попробовал не подправляя, но ничего не сработало.

По конфигу нашел несколько ссылок но они мне тоже не помогли(может кому-то помогут) понять правильный принцип настройки:

Вики арча

Вики арча 2

Лор общее рабочее пространство для двух видеокарт

bagow ()
Ответ на: комментарий от bagow

Разбейте задачу на 3 части:

1 Запустить систему на 2х мониторах подключенных к разным видеоадаптерам (nvidia - intel) + xinerama

2 Разделить 2 минитора подключеных к nvidia на разные screen

3 Объеденить 1+2 и получить рабочие 3 монитора.

zaz ★★★★ ()

Да и кстати когда на 1 из мониторов черный экран с курсором, скорее всего он не завелся в лайаут хинерамой, но на него можно вывести окно например вот так:

DISPLAY=:0.1 xclock

zaz ★★★★ ()
Ответ на: комментарий от zaz

1. Они запущены и работают но не корректно: Скрин демонстрирует наглядно в чем проблема, на скрине видно что 3-й монитор(3 vga nvidia) работает, но так только если делаешь принтскрин, по факту монитор полностью черный и видно только курсор.

2. К nvidia подключен только 1 монитор через VGA, два монитора подключены к интегрированной видюхе интел.

3. 3 монитора одновременно работают, но почему-то я могу перетащить мышь на монитор, но когда перетаскиваю например окно браузера его не видно, и рабочий стол не видно, только курсор мыши отображается на мониторе который включен в VGA nvidia.

bagow ()
Ответ на: комментарий от bagow

Это не номер монитора, а номер скрина (сщитайте видео карты). По умолчанию окна между разными скринами перетаскивать нельзя, окружение рабочего стала (DE) на каждом скрина должно запускатся свое (например старый KDE 4 такое умел делать из коробки).

Для объединения нескольких скринов в один большой виртуальный скрин есть XINERAMA но она дает некоторые ограничения:

1. Не будет нормально работать OpenGL (в принципе вообще не будет).

2. Если какойто скрин имеет несколько мониторов (это ваш случай так как к nvidie карте подключено 2 монитора) - не заработает вообще

Второе ограничение можно обойти, можно в конфиге разделить два монитора подключенных к nvidia по двум разным скринам и уже потом их снова объеденить вместе через xinerama, я не зная можно ли это сделать на открытых драйверах, но раньше на блобе уменна именно так и было.

zaz ★★★★ ()
Ответ на: комментарий от zaz

1. Меня это не пугает. 2. «так как к nvidie карте подключено 2 монитора» - Нет к интелу 2 монитора, к nvidia 1 монитор.

«Второе ограничение можно обойти» - Я так себе процесс и представляю, сейчас у меня проблема в том что-бы написать логичный и правильный xorg.conf. Но все мои попытки ничего не дают. А монитор 3-й ведет себя странно, каким образом при принтскрине я получаю полноценное изображение? И почему не вижу картинки просто так, получается видеокарта(nvidia) отрисовывает на 3-м мониторе и окна и рабочий стол, но не показывает по какой-то причине пользователю(пользователь может увидеть только курсор мыши на черном экране), а служебным программам вроде принтскрина без проблем.

bagow ()
Ответ на: комментарий от bagow

nvidia неотрисовывает ничего кроме курсора поэтому вы ничего и не видите. Всей отрисовкой занимается интел, просто часть изображения не попадает на экран.

Я повторюсь - не ставте перед собой сразу сложную задачу, для начале упростите ее, оставте только 2 монитора (один на intel второй на nvidia) и попробуйте завести 2 скрина (хотябы без хинерамы для начала а как 2 дисплея :0.0 и :0.1).

zaz ★★★★ ()
Ответ на: комментарий от zaz

Посмотрите правильно ли я понимаю логику, может я в какой-то мелочи ошибаюсь...

Section "Device"
    Identifier "IntelCard" - Произвольное название
    Driver "nouveau" - стандартный открытый драйвер
    BusID "PCI:0:2:0" - взял из lspci -nn | grep VGA
EndSection

Section "Device"
    Identifier "NvidiaCard" - Произвольное название
    Driver "nouveau" - стандартный открытый драйвер    
    BusID "PCI:1:0:0" - взял из lspci -nn | grep VGA
EndSection

Section "Screen"
    Identifier     "Screen0" - Условное обозначение или название рабочего стола.
    Device         "NvidiaCard" - Произвольное название из первого блока.
EndSection

Section "Screen"
    Identifier     "Screen1" - Условное обозначение или название рабочего стола или х-сервера.
    Device         "IntelCard" - Произвольное название из первого блока.
EndSection

Section "ServerLayout" - ?
    Identifier "layout1" - ?
    Screen      0  "Screen0" - ?
    Screen      1  "Screen1" LeftOf  "Screen0" - поставить скрин0 слева от скрина1
    Option "Xinerama" "1" - Разрешаем работу Xinerama
EndSection
bagow ()
Ответ на: комментарий от bagow

Потому что это видеокарты.

У меня еще в 2008 была GeForce 6600 LE.

Наверное трудно жить с GeForce 6600 в 2017 году, невидия вроде дропнула ее, эту GeForce 6600 в новых дровах.

Вот моей 7870 всего 5 лет, а в линуксе уже считай неюзабельно.

RedEyedMan4 ★★★★★ ()
Последнее исправление: RedEyedMan4 (всего исправлений: 1)
Ответ на: комментарий от RedEyedMan4

RX 480 и NEVIDIA 1080

у этих аналоговые выходы дропнули же, D-SUB не умеют

минимум DVI-D нужен на мониторе, ну или заказывать с Али конверторы, однако на выходе может получиться ужос

fcx ★★★ ()