Автор Тема: Мультисит в Альте  (Прочитано 606 раз)

Оффлайн Teevali

  • Участник
  • *
  • Сообщений: 8
Мультисит в Альте
« : 06.01.2025 10:17:15 »
Всем привет!
Когда-то много лет назад я занимался настройкой "мультисита" на линуксе - это когда к одному системному блоку можно подцепить несколько мониторов, клавиатур и мышек и сразу несколько пользователей могут работать за одним компьютером, при этом не мешая друг другу. Тогда этот процесс был довольно сложный, я даже написал целую статью, в которой рассмотрел несколько вариантов настройки мультисита.
Вся настройка сводилась к правильной конфигурации двух файлов: файла xorg.conf, в котором прописывалось всё оборудование (видеокарта/монитор/клавиатура/мышь) и привязывалось к нужным местам, и далее в файле настройке менеджера дисплея GDM или KDM прописывалось, какое место на каком мониторе будет стартовать.

Спустя много лет мне вновь потребовалось выполнить эту настройку. Сейчас уже менеджеров GDM и KDM нет даже в репозиториях некоторых систем (правда GDM-2.20 в репах Альта всё-таки присутствует, что не может не радовать). Но для меня оказалось приятной неожиданностью, когда в системе Альт К-Рабочая Станция 10.4 я увидел среди настроек в Альтераторе возможность быстро  просто настроить мультисит, используя графическую оболочку.

Всё это дело настраивалось на компьютере с процессором AMD Ryzen7 5700G со встроенной графикой и дискретной видеокартой Radeon R7 240. Всё было подобрано так, чтобы видеокарты были примерно одинаковы и использовали один драйвер (я уж помню, как когда-то всласть намучался со связкой Intel+NVidia). Как и положено, для нормальной настройки мультисита в БИОСе старт компьютера начинался обязательно со встроенной графики.

Но вот после загрузки системы получилась такая неприятная ситуация, когда на первом месте с видеокартой Radeon R7 всё работает отлично, а на втором месте, где использовалась встроенная графика, не работает абсолютно ничего: ни клавиатура, ни мышь, просто замерло всё на окне приглашения. Я посмотрел логи событий: дискретная видяха использует драйвер radeon, а встроенная - amdgpu, и именно он вызывал сбой при запуске второго места.

Ладно, ничего страшного, бывает. Достаточно поиграться с драйверами, может даже прописать vesa, и всё заработает (и такое иногда прокатывало!). Полез я в конфиг-файлы, и тут обнаружил, что файлов конфигурации Xorg нет ни в корне каталога /etc/X11, ни в /etc/X11/xorg.conf.d (в этот каталог как правило сохраняется файл xorg.conf, разделённый на несколько файлов по рабочим местам для удобстав конфигурирования). Соответственно файла настройки менеджера дисплея LightDM я тоже не обнаружил.

Пока что первый вопрос: куда Альтератор сохраняет файлы конфигурации мультисита?

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 003
Re: Мультисит в Альте
« Ответ #1 : 11.01.2025 20:42:32 »
после остановки иксов

Xorg -configure

от рута создаст файл настроек и его можно будет перенести в /etc/X11 и уже там донастроить.

иксы уже давно в большей части случаев не требуют конфига, но мультисит это видимо не тот случай...

Оффлайн Teevali

  • Участник
  • *
  • Сообщений: 8
Re: Мультисит в Альте
« Ответ #2 : 16.01.2025 00:58:40 »
В общем покопался я более детально, получается такая фишка: на месте со встроенной видеокартой на самом деле ничего не зависает, просто при старте системы оно не подхватывает клавиатуру и мышь. Если после того, как система прогрузилась, вставить сторонние клавиатуру и мышь, которых само собой в сохранённой конфигурации нет, они подхватываются на первом месте со встроенной видеокартой, и вроде как всё работает, но возникает следующая засада: при попытке попытке залогиниться под пользователем меня вновь выкидывает в окно ввода логина пароля, т.е. пользователь даже не входит в систему.
Как можно решить эти две проблемы?

P.S.: про создание я конфигурирование xorg.conf я знаю, вот только возникает ещё одна проблема: надо конфигурировать DM под два рабочих места. Я когда-то это делал с использованием GDM и KDM, но с тех пор KDM мёртв, а GDM перелопатили, и я даже не знаю, получится ли под ним завести мультисит. Сейчас везде в основном используются LightDM и SDDM, но с LightDM я пока ещё не разбирался.

Оффлайн kessys

  • Участник
  • *
  • Сообщений: 802
Re: Мультисит в Альте
« Ответ #3 : 16.01.2025 09:10:37 »
Так-то подумать крутая штука. Но было бы на уровне производителей бы. и со встроенной графикой.
В 10 версии используется LightDM c версии 10.2 или 10.3.
не забудь про фишку ALT alterator, может быть я преувеличиваю и это красивая штука и ничего не затрагивает.
О подпись)
Жизнь с kde не так плоха, Но без ssd, это жестоко грустно.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 003
Re: Мультисит в Альте
« Ответ #4 : 16.01.2025 13:04:54 »
P.S.: про создание я конфигурирование xorg.conf я знаю, вот только возникает ещё одна проблема: надо конфигурировать DM под два рабочих места. Я когда-то это делал с использованием GDM и KDM, но с тех пор KDM мёртв, а GDM перелопатили, и я даже не знаю, получится ли под ним завести мультисит. Сейчас везде в основном используются LightDM и SDDM, но с LightDM я пока ещё не разбирался.

Согласно арчевики в LightDM есть https://wiki.archlinux.org/title/Xorg_multiseat
В альте системд, так-что должны быть рабочие советы.
И есть xdm если с LightDM не взлетит...

For LightDM
LightDM has automatic multiseat detection (pulling from the seat list provided by loginctl list-seats). If you have a manual Xorg configuration file and want to use it, make sure you specify valid MatchSeat values there (see above). This is because LightDM automatically passes -seat seat0 or similar to /usr/bin/X, so Xorg will ignore any sections that have a MatchSeat that does not match the current seat. (So if you forget to specify MatchSeat at all, those sections will apply to every seat which, in the case of display devices, means one or more seats likely will not start at all as they all compete for the same display.)

If you need you can configure it on /etc/lightdm/lightdm.conf

[LightDM]
run-directory=/run/lightdm

[Seat:*]
greeter-session=lightdm-gtk-greeter
greeter-hide-users=false # Bug: lightdm-gtk-greeter does not load user saved session when greeter-hide-users=true[1]
session-wrapper=/etc/lightdm/Xsession

[Seat:seat0]
xserver-command=/usr/bin/X :0
# If you cannot put `MatchSeat "seat0"` in the `ServerLayout` section for some reason, you can force a layout here.
xserver-layout=seat0

[Seat:seat-1]
xserver-command=/usr/bin/X :1
xserver-layout=seat-1

Оффлайн Teevali

  • Участник
  • *
  • Сообщений: 8
Re: Мультисит в Альте
« Ответ #5 : 27.01.2025 09:27:13 »
В общем мои изыскания пока таковы:
1) если разруливать мультисит через Alterator, то он в /etc/udev/rules.d создаёт несколько правил, благодаря которым всё и получается.
Простейший мультсит на systemd описан ЗДЕСЬ
Однако минус такого способа - если что-то не заработает, как у меня, управлять этим будет невозможно! То бишь невозможно подставить в конфигурацию драйвера, или прописать какие-либо ещё настройки.

2) пробовал запустить мультисит при помощи LightDM (к сожалению KDM мёртв), однако почему-то он не хочет из своего конфига подхватывать настройки для Seat:seat0 и Seat:seat1, а грузит конфиг по дефолту Seat:*.
P.S.: кстати, для использования настройки greeter-session=lightdm-gtk-greeter должен быть установлен соответствующий пакет, который в Альте по умолчанию не стоит, поскольку не надо. С этим я тоже помучился, пока не понял всего прикола, когда у меня рабочие места не стартовали вообще.



Оффлайн kessys

  • Участник
  • *
  • Сообщений: 802
Re: Мультисит в Альте
« Ответ #6 : 27.01.2025 09:31:16 »
reeter-session=lightdm-gtk-greeter должен быть установлен соответствующий пакет, который в Альте по умолчанию не стоит,
он не отсутствует, он делиться по наличию граф. оболочек у kde свой greeter. 11 версия  с gnome и kde, simply xfce
О подпись)
Жизнь с kde не так плоха, Но без ssd, это жестоко грустно.

Оффлайн Teevali

  • Участник
  • *
  • Сообщений: 8
Re: Мультисит в Альте
« Ответ #7 : 27.01.2025 09:57:00 »
А я и не говорил, что он "отсутствует"! Просто если прописать эту настройку, как указано у Вас, то по умолчанию ничего работать не будет, надо либо доустанавливать пакет lightdm-gtk-greeter, либо прописать пreeter-session=lightdm-kde-greeter либо  default