<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" style="task" id="lockdown-single-app-mode" xml:lang="ru">

  <info>
    <link type="guide" xref="user-settings#lockdown"/>
    <link type="guide" xref="sundry#session"/>
    <link type="seealso" xref="lockdown-printing"/>
    <link type="seealso" xref="lockdown-file-saving"/>
    <link type="seealso" xref="lockdown-repartitioning"/>
    <link type="seealso" xref="lockdown-command-line"/>
    <link type="seealso" xref="login-automatic"/>
    <link type="seealso" xref="session-custom"/>
    <link type="seealso" xref="session-user"/>

    <revision pkgversion="3.30" date="2019-02-08" status="review"/>

    <credit type="author copyright">
      <name>Матиас Класен (Matthias Clasen)</name>
      <email>mclasen@redhat.com</email>
      <years>2014</years>
    </credit>
    <credit type="editor">
      <name>Яна Сварова (Jana Svarova)</name>
      <email>jana.svarova@gmail.com</email>
        <years>2014</years>
    </credit>
    <credit type="editor">
      <name>Петр Ковар (Petr Kovar)</name>
      <email>pknbe@volny.cz</email>
      <years>2019</years>
    </credit>
    <credit type="author">
      <name>Марек Сучанек (Marek Suchánek)</name>
      <email>msuchane@redhat.com</email>
      <years>2023</years>
    </credit>

    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
       
    <desc>Установка киоскоподобной системы с одним приложением.</desc>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Ser82-png</mal:name>
      <mal:email>asvmail.as@gmail.com</mal:email>
      <mal:years>2022-2023</mal:years>
    </mal:credit>
  </info>

  <title>Настройка режима одного приложения</title>

  <p>Режим одного приложения — это модифицированная GNOME Shell, в которой оболочка настроена на работу в формате интерактивного киоска. Администратор блокирует некоторые действия с целью наложения дополнительных ограничений на действия пользователей со стороны стандартного рабочего стола, предоставляя возможность сосредоточить на работе с выбранными элементами.</p>

  <p>Настройте режим одного приложения для применения широкого спектра задач в ряде сфер (от общения до развлечений или образования) и используйте его как автомат самообслуживания, ивент-менеджер, пункт регистрации и так далее.</p>

  <note style="tip">
    <p>Ваш дистрибутив может предоставлять сеанс <link href="https://gitlab.gnome.org/GNOME/gnome-kiosk">GNOME Kiosk</link>, который обычно доступен в пакете gnome-kiosk. Вы можете использовать его для более простой настройки режима одного приложения. В противном случае воспользуйтесь приведённой ниже процедурой.</p>
  </note>

  <steps>
  <title>Настройка режима одного приложения</title>
    <item>
      <p>Заблокируйте настройки, чтобы предотвратить доступ к печати, терминалу и т.д.</p>
      <list type="disc">
        <item><p><link xref="lockdown-command-line"/></p></item>
        <item><p><link xref="lockdown-printing"/></p></item>
        <item><p><link xref="lockdown-file-saving"/></p></item>
        <item><p><link xref="lockdown-repartitioning"/></p></item>
      </list>
    </item>
    <item>
      <p>Настройте автоматический вход для пользователя в файле <file>/etc/gdm/custom.conf</file>.</p>
      <p>Для получения дополнительной информации смотрите <link xref="login-automatic"/>.</p>
    </item>
    <item>
      <p>Создайте следующие файлы с приведённым ниже содержимым:</p>
      <terms>
        <item>
          <title><file>/usr/share/applications/org.gnome.Kiosk.Script.desktop</file></title>
<code>
[Desktop Entry]
Name=Киоск
Type=Application
Exec=gnome-kiosk
</code>
        </item>
        <item>
          <title><file>/usr/share/applications/org.gnome.Kiosk.WindowManager.desktop</file></title>
<code>
[Desktop Entry]
Type=Application
Name=Mutter
Comment=Оконный менеджер
Exec=/usr/bin/mutter
Categories=GNOME;GTK;Core;
OnlyShowIn=GNOME;
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
X-GNOME-Provides=windowmanager;
X-GNOME-Autostart-Notify=true
X-GNOME-AutoRestart=false
X-GNOME-HiddenUnderSystemd=true
</code>
        </item>
        <item>
          <title><file>/usr/share/gnome-session/sessions/gnome-kiosk.session</file></title>
<code>
[GNOME Session]
Name=Киоск
RequiredComponents=org.gnome.Kiosk.WindowManager;org.gnome.Kiosk.Script;
</code>
        </item>
        <item>
          <title><file>/usr/share/X11/xorg.conf.d/20-gnome-kiosk.conf</file></title>
<code>
Section "ServerFlags"
    Option "DontVTSwitch" "on"
EndSection
</code>
        </item>
        <item>
          <title><file>/usr/share/xsessions/org.gnome.Kiosk.desktop</file></title>
<code>
[Desktop Entry]
Name=Киоск
Comment=Режим киоска
Exec=/usr/bin/gnome-session --session=gnome-kiosk
DesktopNames=GNOME-Kiosk;GNOME;
</code>
        </item>
      </terms>
    </item>
    <item>
      <p>Как пользователь, который будет открывать сеанс с одним приложением, создайте файл <file>/home/<var>user</var>/.local/bin/gnome-kiosk</file>:</p>
<code>
[<var>user</var>]$ mkdir -p ~/.local/bin

[<var>user</var>]$ touch ~/.local/bin/gnome-kiosk
</code>
    </item>
    <item>
      <p>Отредактируйте файл <file>/home/<var>user</var>/.local/bin/gnome-kiosk</file> и введите название исполняемого файла приложения, которое вы хотите запустить в режиме одного приложения.</p>
      <p>Например, чтобы запустить браузер Firefox в режиме одного приложения, введите следующее:</p>
<code>
#!/bin/sh

while true; do
    firefox --kiosk https://example.org
done
</code>
      <p>Цикл <code>while true</code> гарантирует, что приложение перезапустится, если оно по какой-либо причине упадёт.</p>
    </item>
    <item>
      <p>Сделайте файл исполняемым:</p>
<code>
[<var>user</var>]$ chmod +x ~/.local/bin/gnome-kiosk
</code>
    </item>
    <item>
      <p>Если вы создали файл или содержащие его каталоги от имени пользователя, отличного от пользователя одного приложения, например root, убедитесь, что файл имеет правильные разрешения:</p>
<code>
# chown -R <var>user</var>:<var>group</var> ~<var>user</var>/.local
</code>
    </item>
    <item>
      <p>На экране входа в GNOME выберите сеанс киоска в меню кнопки с шестерёнкой и войдите в систему как пользователь одного приложения.</p>
    </item>
  </steps>

</page>
