Графический терминальный класс

Один из преподавателей на ВМК выразил желание поддерживать систему с графическими терминалами-тонкими клиентами. Предполагается, что студенты будут пользоваться системой, заходя в неё по сети из компьютерного класса и работая в графическом окружении.

Наиболее проверенными решениями подобной задачи являются X-протокол (XDMCP) и VNC.

TODO: почему не подошёл xdmcp

На помощь пришёл lightdm — он слушает на порту 5900 и на время каждого подключения открывает удалённый X-сеанс, вместо видеоаппаратуры использующий VNC-соединение.

Чтобы воспользоваться этой возможностью, нужно:

# apt-get install lightdm /usr/bin/Xvnc

# systemctl enable lightdm
# systemctl set-default graphical.target

[VNCServer]
enabled=true
command=Xvnc -SecurityTypes none
width=1920
height=1080
depth=32

Параметр command позволяет передать серверу дополнительные параметры. По умолчанию сервер слушает на 0.0.0.0:5900.

# systemctl restart lightdm

Теперь можно подключиться к серверу:

% vncviewer server

Во время тестирования решения в ALT-пакете lightdm была исправлена ошибка (34721, только в Sisyphus)

Пока не решённая проблема: lightdm при открытии сеанса для каждого пользователя пытается получить картинку из домашнего каталога. В нашем случае это 10000-14000 неуспешных access() к NFS-хранилищу. В случае 20-30 одновременных клиентов длительность ожидания соответствующим образом возрастает.


Meetings/CMCALT/GraphicalTerminal (последним исправлял пользователь ArsenyMaslennikov 2018-04-03 21:40:38)