Предисловие
На сегодняшний день широкое распространение получили такие устройства фиксированного назначения, как специализированные цифровые киоски, системы самообслуживания, кассовые аппараты, рекламные панели и подобные им устройства. Каждое такое устройство имеет свои особенности.
У касс, например, специализированная клавиатура, у информационных киосков – сенсорный экран, а рекламные панели не предусматривают взаимодействия с пользователем. Поэтому в статье будет рассмотрен необходимый минимум, который чаще всего требуется, – настройка подобных решений фиксированного назначения без клавиатуры.
Где взять дистрибутив и скрипты для настройки
Рассмотрим более подробно устройства фиксированного назначения на процессорной архитектуре x86-64. Описание настроек, о которых будет идти речь далее, находится в Википедии, а здесь информация будет больше похожа на пошаговую инструкцию, так что вам не составит труда пройти по ней для настройки устройства фиксированного назначения и ознакомиться с решением самостоятельно (рис. 1). Если вы ещё не успели обзавестись дистрибутивом Astra Linux, то можете запросить его для тестирования, заполнив форму по адресу на рис. 2. Для максимально быстрой и простой настройки будем использовать скрипт, который можно получить, пройдя по одной из ссылок: рис. 3, 4.
Установка Astra Linux Embedded
Не будем очень подробно останавливаться на установке, так как она проста и интуитивно понятна, но всё же отметим некоторые нюансы.
- Если после настройки вы планируете защитить от записи весь диск, чтобы сделать систему более отказоустойчивой, то при разметке диска необходимо выбирать «Авто – использовать весь диск», а затем «Все файлы на одном разделе». Если выбрать «Отдельный раздел для /home», то в домашнем каталоге пользователя файлы не будут защищены от записи.
- Если вы ещё не определились, какая редакция ОС нужна, то выбирайте максимальную «Смоленск», так как понижать редакцию после установки гораздо проще, чем повышать.
Подведём промежуточный итог: итак, у нас установлена «ALSE 1.7.5» и есть скрипт для настройки «1.7.5.001». Теперь перейдём непосредственно к настройке системы.
Настройка загрузки системы
На устройстве фиксированного назначения обычно требуется быстрая загрузка с минимальным отображением данных, поэтому можно сразу отключить отображение загрузочного меню «GRUB2». А для комфортного входа в учётную запись администратора на время настройки системы можно включить автоматический вход для администратора и автоматический выбор уровня мандатного контроля целостности. Запускаем скрипт, принимаем лицензионное соглашение, переходим в пункт «Параметры загрузки и входа» и изменяем соответствующие настройки, как показано на рис. 5.
Из скрипта можно запускать графические утилиты для настройки системы, нажимая соответствующие кнопки. Также команды можно выполнить, нажав «Alt+F2». При наборе будут появляться подсказки.
Чтобы при запуске скрипта система не запрашивала пароль, в скрипте можно отключить требование пароля при использовании sudo, данная возможность есть в пункте древовидного меню «Безопасность».
Создаём пользователя для «Графического киоска»
Теперь создадим нового пользователя. Для этого нажимаем на список пользователей в скрипте и нажимаем «Insert». В разделе «Вход без пароля» такой возможности нет, но она будет добавлена в следующей версии скрипта. Поэтому можно выбрать пользователя в древовидном меню, раскрыв раздел «Настройки экрана» или «Темы курсора мыши», выбрать пользователя и нажать «Insert», в результате появится меню, как показано на рис. 6.
Можно создать пользователя без пароля, тогда обязательно нужно будет разрешить вход без пароля или можно создать пользователя с паролем и разрешить вход без пароля на время настройки системы. Результаты настройки удобнее всего проверять не в отдельной сессии, а в сессии, запущенной в окне, поэтому лучше разрешить вход без пароля как в отдельной сессии, так и в окне. Чтобы настройки входа без пароля вступили в силу, нужно перезагрузить систему или перезапустить «fly-dm», что гораздо быстрее. При перезапуске «fly-dm» будет выполнен автоматический вход в учётную запись, так как включён автоматический вход и автоматический выбор уровня МКЦ.
Отключение блокировки сессии и выключение экрана
Обычно устройства фиксированного назначения работают без блокировки сессии и выключения экрана. Можно отключить управление питанием экрана для всей системы с помощью скрипта в меню «Настройки экрана», а развернув подменю и выбрав пользователя, отключить блокировку сессии для выбранного пользователя, в результате сессия пользователя не будет блокироваться в любом режиме работы. Но есть ещё один вариант – одной настройкой отключить блокировку сессии и отключение экрана для тех сессий, которые запущены с включённым режимом «Графического киоска». Данная возможность кажется интересней, поэтому будем использовать её.
Нажимаем «Alt+T» и в открывшейся консоли вводим «sudo nano /etc/fly-kiosk/.config/lockerrc/lockerrc» и нажимаем «Enter». Не забывайте использовать «Tab» для автоподстановки во время набора команд или пути. Когда будет набрано «sudo nano /etc/fly-kiosk/.c», то остальной путь можно дополнить, используя только «Tab». В открывшемся файле прямо под «Variables» добавляем строчку «ScreenSaverDelay=0». Для сохранения нажимаем «Ctrl+O» и «Enter», а для выхода «Ctrl+X».
Настройка «Графического киоска»
Настроить «Графический киоск» можно в графическом интерфейсе системы. Для этого проходим по пути: «Пуск→Панель управления→Безопасность→Политика безопасности», далее необходимо раскрыть меню «Пользователи», выбрать пользователя, для которого будет настраиваться «Графический киоск», и перейти на вкладку «Графический киоск». После установки флажка «Режим графического киоска» становится доступным интуитивно понятное меню, в котором можно добавлять приложения, которые будут доступны пользователю. В зависимости от выбранного пункта «Приложения на рабочем столе», «Приложения на панели задач» ярлыки приложений будут добавлены в соответствующие места и в меню «Пуск». При выборе пункта «Другие разрешённые приложения» ярлыки будут добавлены только в меню «Пуск».
«Режим одного приложения» позволяет запустить одно приложение развёрнутым на весь экран, запущенное приложение не может быть свёрнуто, и нельзя изменить размер его окна. Закрытие приложения приведёт к завершению сессии.
Стоит упомянуть, что у браузеров есть свой режим киоска, при использовании которого браузер будет запущен развёрнутым на весь экран без элементов управления браузером. Для запуска браузера в режиме киоска достаточно добавить параметры запуска в поле ввода «Путь к программе», и команда запуска будет выглядеть вот так: «/usr/bin/chromium --kiosk %U» и «/usr/bin/firefox --kiosk --app=%u» для хромиума и фаерфокса соответственно (рис. 7).
Проверять работу режима «Графического киоска» удобней во вложенной сессии. Запустить вложенную сессию можно так: «Пуск→Завершение работы→Новый вход→В окне». Так же можно запустить вложенную сессию из скрипта двойным кликом мыши по имени пользователя в древовидном меню (в последующих версиях в любом меню).
Если вы захотите использовать «FireJail», то нужно знать некоторые особенности:
- для использования «FireJail» с браузером необходимо установить пакет «firejail-profiles», который находится в репозитории «base»;
- при отключении доступа к сети в настройках «FireJail» браузеры будут запускаться только в отдельном входе в учётную запись.
Осталось упомянуть об одной небольшой особенности: курсор мыши становится видимым или невидимым в зависимости от использования сенсорного экрана или мыши, но сразу после загрузки системы курсор мыши видимый и будет оставаться видимым до начала использования сенсорного экрана. Чтобы курсор мыши всегда был невидимым, можно установить тему курсора мыши «xcursor-transparent», это можно сделать с помощью скрипта для настройки, можно указать тему курсора мыши для всей системы или для конкретного пользователя.
Завершение настроек
После завершения настроек «Графического киоска» в древовидном меню скрипта выбираем «Параметры загрузки и входа» и настраиваем автоматический вход для пользователя, для которого настроен режим «Графического киоска», если для пользователя указан пароль, то можно отключить разрешение на вход без пароля. В этом же разделе скрипта запускаем «Настройки графического входа», нажав соответствующую кнопку, в окне настроек графического хода переходим на вкладку «Дополнительно» и ставим флажок «Автоматический вход в систему после сбоя X-сервера».
В древовидном меню скрипта «Безопасность» включаем требование пароля при использовании sudo. А затем перезагружаем систему для проверки.
Если решение не подразумевает сохранение данных в процессе использования, то после успешной проверки желательно включить оверлей, данная возможность предотвратит запись на диск и сделает систему более отказоустойчивой, например, в случаях внезапной потери питания. После включения оверлея необходимо перезагрузить систему, после чего можно убедиться, что любые изменения в системе будут сохраняться до перезагрузки системы.
Помните о необходимости в настройках BIOS/UEFI указать настройки, которые позволят включить устройство автоматически при подаче питания. Данная возможность позволит автоматически возобновить работу устройства после потери питания.
Заключение
В результате мы получили систему, в которой:
- отключено отображение меню GRUB2;
- настроен автоматический вход пользователя, для которого настроен режим «Графический киоск»;
- в режиме «Графический киоск» пользователь может использовать только определённый перечень приложений;
- курсор мыши всегда невидим;
- система не блокирует сессию и не отключает экран монитора;
- включён оверлей, который предотвращает запись на диск и исключает появление сбоев файловой системы в результате внезапной потери питания.
Данные настройки обеспечат стабильную работу решения с использованием штатных средств, имеющихся в ОС Astra Linux Embedded.
Для окончательной проверки решения включите устройство, дождитесь загрузки системы, отключите источник питания, а затем снова включите. Подобную проверку с внезапным отключением питания можно провести многократно, отключая питание на разных стадиях загрузки операционной системы.●
© СТА-ПРЕСС, 2024