[sisyphus] multiseat с двумя разными видеокартами

Константин Голубев kostiagol на yandex.ru
Пн Окт 7 21:29:17 MSK 2013


В письме от Понедельник 07 октября 2013 20:13:51 пользователь Aleksey Birukov 
написал:
> Похоже, что получилось.
> На обоих дисплеях в выводе glxinfo появилась долгожданная строчка:
> direct rendering: Yes
> 
> Информации по решению конкретно моей задачи в интернете я не нашёл, 
поэтому
> пришлось изобретать -велосипед- :)
> 
> Посредством kdmrc один из X-серверов запускается с отдельным конфигом
> xorg.conf.nvidia
> ServerArgsLocal=-nolisten tcp -layout seat1 -sharevts -keeptty -novtswitch
> -isolateDevice PCI:01:00:0 -config xorg.conf.nvidia
> 
> Посредством настройки xorg.conf.nvidia грузятся библиотеки по следующим
> путям.
> Section "Files"
>     ModulePath     "/usr/lib/nvidia_310.44.custom"
>     ModulePath     "/usr/lib/X11/modules"
>     ModulePath     "/etc/X11/lib_nvidia"
>     ModulePath     "/etc/X11/lib"
> EndSection
> 
> Запускаем KDE с правильными LD_PRELOAD
> $ cat /home/user/.kde4/env/preloadnv.sh
> #!/bin/bash
> 
> export LD_PRELOAD=/usr/lib/libnvidia-tls.so.310.44
> export LD_PRELOAD=/usr/lib/libnvidia-glcore.so.310.44
> export LD_PRELOAD=/lib/libm.so.6
> export LD_PRELOAD=/usr/lib/nvidia_310.44/libGL.so.1
> 
> Возможно, потребуется поправить права доступа к /dev/nvidiactl
> 
> P.S. А почему в ppracer пингвин ползёт налево, хотя левая стрелка на
> клавиатуре не нажата?
> 
> --
> С уважением,
> Бирюков Алексей

Извините! Я пропустил Ваше предыдущее письмо!!! Но Вы сами почти всё 
правильно сделали, одно только "НО". Получается, что один пользователь может 
подключаться только под Нвидией, а другой под Интелом. Рабочее место 
фиксировано. Я предлагаю Вам перенести их в инициализацию самого KDM на 
Nvidia. В известном Вам kdmrc есть блок:

[X-*-Core]
AllowNullPasswd=false
AllowRootLogin=false
AllowShutdown=Root
AutoReLogin=false
ClientLogFile=.xsession-errors-%d
Reset=/etc/X11/kdm4/Xreset
Setup=/etc/X11/kdm4/Xsetup
Startup=/etc/X11/kdm4/Xstartup

Следовательно, Вы можете настроить два таких блока - один для экземпляра на 
Интеле, а второй на Nvidia.  И пусть блок на Nvidia запускает модифицированный 
файл Xstartup-Nvidia, в который Вы добавите свои прелоуды.
По логике, интересующая Вас часть kdmrc должна выглядеть примерно так:
Допустим, что сервер 0 запущен на интеле, а 1 на Нвидии

[X-0-Core]
AllowNullPasswd=false
AllowRootLogin=false
AllowShutdown=Root
AutoReLogin=false
ClientLogFile=.xsession-errors-%d
Reset=/etc/X11/kdm4/Xreset
Setup=/etc/X11/kdm4/Xsetup
Startup=/etc/X11/kdm4/Xstartup

[X-0-Greeter]
AntiAliasing=false
ColorScheme=
FaceSource=PreferUser
FailFont=Sans,10,-1,5,75,0,0,0,0,0
ForgingSeed=1374248445
GUIStyle=
GreetFont=Serif,20,-1,5,50,0,0,0,0,0
GreetString=Добро пожаловать в %s на %n
GreeterPos=50,50
HiddenUsers=root
Language=ru
LogoArea=Logo
LogoPixmap=/usr/share/kde4/apps/kdm/pics/kdelogo.png
MaxShowUID=29999
MinShowUID=500
Preloader=/usr/lib/kde4/bin/preloadkde
SelectedUsers=
ShowUsers=NotHidden
SortUsers=true
StdFont=Sans,10,-1,5,50,0,0,0,0,0
Theme=/usr/share/kde4/apps/kdm/themes/elarun
UseBackground=true
UseTheme=false
UserCompletion=false
UserList=true


[X-:0-Core]
AllowNullPasswd=true
AllowShutdown=All
NoPassEnable=true
NoPassUsers=user1
ServerArgsLocal=-nolisten tcp -layout seat0 -keeptty -novtswitch -isolateDevice 
PCI:00:02:0
ServerCmd=/etc/X11/xinit/xserverrc


[X-1-Core]
AllowNullPasswd=false
AllowRootLogin=false
AllowShutdown=Root
AutoReLogin=false
ClientLogFile=.xsession-errors-%d
Reset=/etc/X11/kdm4/Xreset
Setup=/etc/X11/kdm4/Xsetup
Startup=/etc/X11/kdm4/Xstartup-nvidia

[X-1-Greeter]
AntiAliasing=false
ColorScheme=
FaceSource=PreferUser
FailFont=Sans,10,-1,5,75,0,0,0,0,0
ForgingSeed=1374248445
GUIStyle=
GreetFont=Serif,20,-1,5,50,0,0,0,0,0
GreetString=Добро пожаловать в %s на %n
GreeterPos=50,50
HiddenUsers=root
Language=ru
LogoArea=Logo
LogoPixmap=/usr/share/kde4/apps/kdm/pics/kdelogo.png
MaxShowUID=29999
MinShowUID=500
Preloader=/usr/lib/kde4/bin/preloadkde
SelectedUsers=
ShowUsers=NotHidden
SortUsers=true
StdFont=Sans,10,-1,5,50,0,0,0,0,0
----------- следующая часть -----------
Вложение в формате HTML было удалено...
URL: <http://lists.altlinux.org/pipermail/sisyphus/attachments/20131007/d0c7b96f/attachment-0001.html>


Подробная информация о списке рассылки Sisyphus