Статус:
Offline
Реєстрація: 02.04.2007
Повідом.: 42
Реєстрація: 02.04.2007
Повідом.: 42
Linux multiseat.(1 корпус - 2 рабочих места)
Вот, решил поделиться своим опытом создания мультисита; Писал сам, хотя и по материалам из инета. Может кому будет интересно.
MultiSeat с использованием Linux.
Multiterminal(Multistation, Multiseat) всеми этими терминами обозначают станцию, предназначенную для одновременной работы нескольких пользователей. Количество пользователей может достигать шести, это зависит уже больше от аппаратного обеспечения.
В интернете существуют статьи, которые описывают создание Multiseat шаг за шагом(см. ссылки[1-4]), но проблема заключается в том, что успешность того или иного подхода зависит от аппаратного обеспечения.
Потому внимание я хочу уделить не столько вопросу "как", сколько вопросу "почему".
Я реализовывал свой домашний multiseat на Slackware 12.1.
Рабочий терминал состоит из:
Терминал 1:
-PS/2 мышь, PS/2 клавиатура.
-монитор PHILIPS 190C
Терминал 2:
-USB мышь, USB клавиатура.
-монитор Samsung 765MB
В моем случае присутствовали две видеокарты, ATI PCIe и Nvidia интегрированный.Как оказалось в дальнейшем, не самый удобный для настройки выбор.
Подходы к созданию Multiseat:
Существует два принципиально отличающихся подхода при создании Multiseat:
1) Запускается два X сервера, которые работают параллельно для каждого рабочего места[3]. Для первого способа необходима два видеоадаптера.
2) Запускается три X сервера, один работает на два рабочих места, в режиме Xinerama, а два других, вложенных(как правило Xephyr, Xgl) работают на нем как на фоне. Один в одном окне, а другой во втором. Притом каждому передаются параметры отвечающие за устройства ввода при запуске. Второй способ естественно более ресурсоемкий, на него накладываются ограничения вложенного сервера (Xephyr, Xgl) вроде отстуствия поддержки 3D, но как правило второй может использоваться там, где первый способ настроить не удается[4].
Для второго способа достаточно одного видеоадаптера с DualHead, Например на DVI и CRT.
В руководствах [3,4] довольно хорошо описан процесс настройки. Но, хотелось бы, обратить внимание на такие подводные камни, лишь чуть затронутые в этих статьях.
1) Не все видеокарты будут работать вместе. Как это не грустно, но такое случается. Потому, прежде чем покупать вторую видеокарту, нужно таки попробовать.
2) Лучше работать на видеокартах одного производителя. Хотя бы из-за драйверов, которые нужно устанавливать два раза, и очень часто выбирать между проприетарными и бесплатными аналогами. Опять таки-прежде чем покупать - пробовать.
3) USB клавиатура и мышь могут вместе не работать. Особенно самые дешевые. Со мной был именно такой случай- пришлось менять.
4) Драйвера. Как правило открытые драйвера подходят. Но если, возникает черный экран и странное сообщение о содержимом BIOSa - качайте проприетарные. Начинайте с последней версии, если не помогает - ищите в интернете, на какой версии нормально работало и качайте ее. Например в моем случае, была ситуация когда работало через один билд. Хотите 3D? Тогда все таки устанавливайте проприетарные драйвера, они как правило более функциональны, особенно со свежими карточками.
5)Какую карту инициализировать первой в BIOS при загрузке компьютера? Очень часто, порядок инициализации будет критичен.
6)evdev работает с идентификаторами событий от устройств(event-id). Некоторые USB устройства меняют свои event-id при перезагрузке. Решение-делать скрипт обертку, лдибо рыться в настройках инициализации USB устройств. Либо - может помочь перегазгрузка. Данная проблема особенно актуальна для второго варианта.
6)Как правило, инициализировать два сервера одновременно не получается. Если вы счастливый обладатель PCI видеокарты - вам поможет IsolateDevice.Для PCIe IsolateDevice - не поможет. Нужно запускать сервера по очереди.
7)Если у вас Nvidia и она при инициализации зависает - попробуйте NoInt10 - может помочь.
8)Какой бы из двух вариантов настройки вы не выбрали бы - настраивать серверанужно по одному! Быстрее будет.
Вопросы:Сделал все как в мануалах, конфиг правильный, а не работает!
Вкратце, алгоритм выявления и устранения неисправностей для первого варианта такой:
1) Настроить один сервер для одной видеокарты. Сохранить конфиг.
2) Настроить второй сервер для второй видеокарты.
3) Запустить поочередно. Если запускаются один после другого - значить проблема практически решена - теперь сводить их вместе. Если нет - 4.
4) Обновить драйвера, Сменить порядок инициализауии в BIOS, пробовать дополнительные параметры xorg.config. Обязательно вести учет перепробованных изменений.
5) Проблема с клавиатрами и мышками - внимательно настроить evdev, Проверить работоспособность устройств выводя содержимое /dev/*** на консоль и нахимая клавиши/двигая мышью.
6) Время от времени, перезагружает один из серверов - увеличить размер свопа, добавить оперативы, сменить оконный менеджер на более легкий.
В продолжении, если затронутая тема будет интересна, разберу конфиги на свою систему, с пошаговым руководством.
Ссылки(были, но первые 20 сообщений на форуме не должны содержать ввв, ком, нет, уа и т д):
Вот, решил поделиться своим опытом создания мультисита; Писал сам, хотя и по материалам из инета. Может кому будет интересно.
MultiSeat с использованием Linux.
Multiterminal(Multistation, Multiseat) всеми этими терминами обозначают станцию, предназначенную для одновременной работы нескольких пользователей. Количество пользователей может достигать шести, это зависит уже больше от аппаратного обеспечения.
В интернете существуют статьи, которые описывают создание Multiseat шаг за шагом(см. ссылки[1-4]), но проблема заключается в том, что успешность того или иного подхода зависит от аппаратного обеспечения.
Потому внимание я хочу уделить не столько вопросу "как", сколько вопросу "почему".
Я реализовывал свой домашний multiseat на Slackware 12.1.
Рабочий терминал состоит из:
Терминал 1:
-PS/2 мышь, PS/2 клавиатура.
-монитор PHILIPS 190C
Терминал 2:
-USB мышь, USB клавиатура.
-монитор Samsung 765MB
В моем случае присутствовали две видеокарты, ATI PCIe и Nvidia интегрированный.Как оказалось в дальнейшем, не самый удобный для настройки выбор.
Подходы к созданию Multiseat:
Существует два принципиально отличающихся подхода при создании Multiseat:
1) Запускается два X сервера, которые работают параллельно для каждого рабочего места[3]. Для первого способа необходима два видеоадаптера.
2) Запускается три X сервера, один работает на два рабочих места, в режиме Xinerama, а два других, вложенных(как правило Xephyr, Xgl) работают на нем как на фоне. Один в одном окне, а другой во втором. Притом каждому передаются параметры отвечающие за устройства ввода при запуске. Второй способ естественно более ресурсоемкий, на него накладываются ограничения вложенного сервера (Xephyr, Xgl) вроде отстуствия поддержки 3D, но как правило второй может использоваться там, где первый способ настроить не удается[4].
Для второго способа достаточно одного видеоадаптера с DualHead, Например на DVI и CRT.
В руководствах [3,4] довольно хорошо описан процесс настройки. Но, хотелось бы, обратить внимание на такие подводные камни, лишь чуть затронутые в этих статьях.
1) Не все видеокарты будут работать вместе. Как это не грустно, но такое случается. Потому, прежде чем покупать вторую видеокарту, нужно таки попробовать.
2) Лучше работать на видеокартах одного производителя. Хотя бы из-за драйверов, которые нужно устанавливать два раза, и очень часто выбирать между проприетарными и бесплатными аналогами. Опять таки-прежде чем покупать - пробовать.
3) USB клавиатура и мышь могут вместе не работать. Особенно самые дешевые. Со мной был именно такой случай- пришлось менять.
4) Драйвера. Как правило открытые драйвера подходят. Но если, возникает черный экран и странное сообщение о содержимом BIOSa - качайте проприетарные. Начинайте с последней версии, если не помогает - ищите в интернете, на какой версии нормально работало и качайте ее. Например в моем случае, была ситуация когда работало через один билд. Хотите 3D? Тогда все таки устанавливайте проприетарные драйвера, они как правило более функциональны, особенно со свежими карточками.
5)Какую карту инициализировать первой в BIOS при загрузке компьютера? Очень часто, порядок инициализации будет критичен.
6)evdev работает с идентификаторами событий от устройств(event-id). Некоторые USB устройства меняют свои event-id при перезагрузке. Решение-делать скрипт обертку, лдибо рыться в настройках инициализации USB устройств. Либо - может помочь перегазгрузка. Данная проблема особенно актуальна для второго варианта.
6)Как правило, инициализировать два сервера одновременно не получается. Если вы счастливый обладатель PCI видеокарты - вам поможет IsolateDevice.Для PCIe IsolateDevice - не поможет. Нужно запускать сервера по очереди.
7)Если у вас Nvidia и она при инициализации зависает - попробуйте NoInt10 - может помочь.
8)Какой бы из двух вариантов настройки вы не выбрали бы - настраивать серверанужно по одному! Быстрее будет.
Вопросы:Сделал все как в мануалах, конфиг правильный, а не работает!
Вкратце, алгоритм выявления и устранения неисправностей для первого варианта такой:
1) Настроить один сервер для одной видеокарты. Сохранить конфиг.
2) Настроить второй сервер для второй видеокарты.
3) Запустить поочередно. Если запускаются один после другого - значить проблема практически решена - теперь сводить их вместе. Если нет - 4.
4) Обновить драйвера, Сменить порядок инициализауии в BIOS, пробовать дополнительные параметры xorg.config. Обязательно вести учет перепробованных изменений.
5) Проблема с клавиатрами и мышками - внимательно настроить evdev, Проверить работоспособность устройств выводя содержимое /dev/*** на консоль и нахимая клавиши/двигая мышью.
6) Время от времени, перезагружает один из серверов - увеличить размер свопа, добавить оперативы, сменить оконный менеджер на более легкий.
В продолжении, если затронутая тема будет интересна, разберу конфиги на свою систему, с пошаговым руководством.
Ссылки(были, но первые 20 сообщений на форуме не должны содержать ввв, ком, нет, уа и т д):