Требования к оборудованию
Для реализации работы в режиме multiseat каждый пользователь должен иметь свои клавиатуру, мышь и монитор. Каждый монитор при этом должен быть подключен к графическому выводу отдельной видеокарты.
В данной инструкции используется компьютер со следующими характеристиками:
- Установлена ОС Astra Linux Special Edition Смоленск версии 1.6 с установленными обновлениями безопасности;
- Имеется встроенная видеокарта Intel;
- Установлена дополнительная дискретная видеокарта Nvidia GeForce 1060;
- Подключены две USB клавиатуры и две USB мыши.
Назначение устройств
Для каждого места (seat) необходимо назначить свои устройства ввода и вывода.
Определить устройства можно командами:
Устройства ввода и вывода назначаются через команду loginctl.
С помощью этой же команды можно проверить подключенные устройства:
Пример вывода команды loginctl (жирным шрифтом выделены сообщения про дополнительные видеокарту, клавиатуру и мышь):
Раскрыть |
---|
Title | sudo loginctl seat-status seat0 |
---|
|
seat0 Devices: ├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input2 │ input:input2 "Power Button" ├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input3 │ input:input3 "Video Bus" ├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1 │ input:input1 "Power Button" ├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input0 │ input:input0 "Sleep Button" ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1 │ [MASTER] drm:card1 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-DP-1 │ │ [MASTER] drm:card1-DP-1 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-DP-2 │ │ [MASTER] drm:card1-DP-2 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-DVI-D-1 │ │ [MASTER] drm:card1-DVI-D-1 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-HDMI-A-3 │ │ [MASTER] drm:card1-HDMI-A-3 │ └─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-HDMI-A-4 │ [MASTER] drm:card1-HDMI-A-4 ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/renderD129 │ drm:renderD129 ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/graphics/fb1 │ [MASTER] graphics:fb1 "nouveaufb" ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1 │ sound:card1 "NVidia" │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input23 │ │ input:input23 "HDA NVidia HDMI/DP,pcm=3" │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input24 │ │ input:input24 "HDA NVidia HDMI/DP,pcm=7" │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input25 │ │ input:input25 "HDA NVidia HDMI/DP,pcm=8" │ └─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input26 │ input:input26 "HDA NVidia HDMI/DP,pcm=9" ├─/sys/devices/pci0000:00/0000:00:02.0/drm/card0 │ [MASTER] drm:card0 │ ├─/sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-1 │ │ [MASTER] drm:card0-HDMI-A-1 │ └─/sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-2 │ [MASTER] drm:card0-HDMI-A-2 ├─/sys/devices/pci0000:00/0000:00:02.0/drm/renderD128 │ drm:renderD128 ├─/sys/devices/pci0000:00/0000:00:02.0/graphics/fb0 │ [MASTER] graphics:fb0 "inteldrmfb" ├─/sys/devices/pci0000:00/0000:00:14.0/usb1 │ usb:usb1 │ ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/0003:046D:C31C.0001/input/input4 │ │ input:input4 "Logitech USB Keyboard" │ ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.1/0003:046D:C31C.0002/input/input5 │ │ input:input5 "Logitech USB Keyboard" │ ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/0003:046D:C077.0003/input/input6 │ │ input:input6 "Logitech USB Optical Mouse" │ ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/0003:046D:C05B.0004/input/input7 │ │ input:input7 "Logitech USB Optical Mouse" │ ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/0003:046D:C313.0005/input/input8 │ │ input:input8 "BTC USB Multimedia Keyboard" │ └─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C313.0006/input/input9 │ input:input9 "BTC USB Multimedia Keyboard"
|
Определив названия подключенных устройств создадим новое рабочее место (Seat) и привяжем к нему устройства ввода и вывода. Привязка видеокарты выполняется командой:
Command |
---|
sudo loginctl attach seat1 /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1 |
Предупреждение |
---|
|
К дополнительным местам следует привязывать только карты, имеющие ненулевые номера, т.е. видеокарта card0 всегда должна быть закреплена за местом по-умолчанию seat0. |
Привязка мыши:
Command |
---|
sudo loginctl attach seat1 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/0003:046D:C05B.0004/input/input7 |
И привязка клавиатуры:
Command |
---|
sudo loginctl attach seat1 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/0003:046D:C313.0005/input/input8 sudo loginctl attach seat1 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C313.0006/input/input9 |
Проверим состояние рабочего места seat1:
Command |
---|
sudo loginctl seat-status seat1 |
Пример вывода команды:
Раскрыть |
---|
Title | sudo loginctl seat-status seat1 |
---|
|
seat1 Devices: ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1 │ [MASTER] drm:card1 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-DP-1 │ │ [MASTER] drm:card1-DP-1 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-DP-2 │ │ [MASTER] drm:card1-DP-2 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-DVI-D-1 │ │ [MASTER] drm:card1-DVI-D-1 │ ├─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-HDMI-A-3 │ │ [MASTER] drm:card1-HDMI-A-3 │ └─/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1/card1-HDMI-A-4 │ [MASTER] drm:card1-HDMI-A-4 ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/0003:046D:C05B.0004/input/input7 │ input:input7 "Logitech USB Optical Mouse" ├─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/0003:046D:C313.0005/input/input8 │ input:input8 "BTC USB Multimedia Keyboard" └─/sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C313.0006/input/input9 input:input9 "BTC USB Multimedia Keyboard" |
Настройка менеджера графических дисплеев
В целях безопасности в ОС Astra Linux менеджер графических дисплеев fly-dm работает от имени непривилегированного пользователя fly-dm. Для работы в режиме multyseat следует переключить fly-dm на работу от имени root. Для этого в файле /etc/X11/fly-dm/fly-dmrc указать параметр ServerUID=root:
Блок кода |
---|
language | bash |
---|
title | /etc/X11/fly-dm/fly-dmrc |
---|
|
# The user the X-server should run as. Empty results - auto, i.e. 'root' or 'fly-dm' if KMS enabled.
# Default is ""
ServerUID=root |
И в конце файла добавить информацию о новом рабочем месте seat1:
Блок кода |
---|
title | /etc/X11/fly-dm/fly-dmrc |
---|
|
[X-:1-Core]
ServerArgsLocal=-seat seat1 |
Разрешение одновременных сессий
В целях безопасности по-умолчанию в Astra Linux при переключении между сессиями неактивная сессия блокируется. Для одновременной работы двух и более сессий требуется дополнительная настройка. Откройте "Панель управления" через меню "Пуск", во вкладке "Рабочий стол" запустите программу "Оформление Fly". На вкладке "Блокировка" убрать галочку "Переключение на другую сессию".
Предупреждение |
---|
Эту операцию нужно выполнить для каждого созданного пользователя, для каждого уровня конфиденциальности и для каждого уровня целостности. |
После выполнения указанных действий перезагрузить компьютер:
После загрузки системы должна стать доступной одновременная работа двух пользователей с двух рабочих мест.