3

Я запускаю программу на общедоступном компьютере и хочу, чтобы другие люди не могли ее закрыть.
У меня есть пароль root.
Как пропустить выключение с помощью некоторых команд?

Я понятия не имею об этом. Но должен быть способ сделать это.

2 ответа2

1

Хотя @duenni предоставил правильный ответ, вы можете легко свернуть собственную реализацию, потому что в основном вам нужны следующие вещи:

  • Настройки сервера X Window, чтобы перестать отвечать на Ctrl & plus; Alt & plus; Комбинация Backspace, которая отключает этот сервер. Я думаю, что в последних версиях X.Org эта комбинация клавиш отключена.

  • Запретить обработку Ctrl & plus; Alt & plus; Del Combo.

    Это зависит от того, какой init "superprocess" установлен.

    С помощью clasic /sbin/init из пакета sysvinit это настраивается в файле конфигурации /etc/inittab .

    С systemd , которая является системой инициализации по умолчанию в Debian 8 "Jessie", это должно быть сделано путем выдачи

    # systemctl mask ctrl-alt-delete.target
    

    команда.

  • Отключите все "виртуальные терминалы", кроме того, на котором запущен X-сервер.

    Обычно система GNU/Linux имеет несколько (обычно 1-4) VT, настроенных для "текстовых" входов, а затем запускает X-сервер на другом VT (обычно 7). Пользователь может переключаться между ними, используя Ctrl & Plus; Alt & plus; F <n> комбо.

    В "режиме киоска" имеет смысл иметь только один активный VT и запустить на нем X-сервер.

    Отключение VT, опять же, зависит от системы init - настройка /etc/inittab для sysvinit и работа с соответствующими файлами .target для systemd .

  • Запустите специализированный оконный менеджер (WM), который работает с учетными данными указанного пользователя на вашем X-сервере.

    Как правило, специальное программное обеспечение, называемое "Desktop Manager" (DM), запускается на X-сервере. Задача этого программного обеспечения состоит в том, чтобы пользователь предоставил свои учетные данные и затем запустил "сеанс X", настроенный для этой системы (или всей системы) - его предпочтительного оконного менеджера (WM) или среды рабочего стола (например, KDE, GNOME). , XFCE и т.д.). Существуют разные реализации DM: XDM , GDM , lightdm , slime - и многие другие.

    Альтернативный подход, идеально подходящий для "режима киоска", состоит в том, чтобы напрямую запустить некоторое программное обеспечение на X-сервере - как если бы пользователь вошел в систему. У Debian есть такой специальный DM, называемый nodm . Он настроен для работы с учетными данными указанного пользователя, запуска указанного программного обеспечения (такого как веб-браузер или некоторая панель мониторинга и т.д.) И перезапускается, если по какой-либо причине эта программа существует. То есть он находится в режиме "всегда включен".

  • если вы собираетесь запустить браузер на своем устройстве, chromium может быть хорошим выбором, поскольку он предоставляет специальные ручки настройки для запуска его в "режиме киоска": mdash, посмотрите это для одного примера.

Я уверен, что это может помочь вам.

Google также является вашим другом, так как эти решения уже внедрены и задокументированы многими людьми.

1

То, что вы ищете, называется kiosk mode . Существуют различные методы для достижения этой цели. Это также зависит от вашего оконного менеджера, например, XFCE имеет встроенный режим киоска .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .