<?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-command-line" lang="tr">

  <info>
    <link type="guide" xref="software#management"/>
    <link type="guide" xref="user-settings#lockdown"/>
    <revision pkgversion="3.30" date="2019-02-08" status="review"/>

    <credit type="author copyright">
      <name>Petr Kovar</name>
      <email>pknbe@volny.cz</email>
      <years>2014</years>
    </credit>
    <credit type="author copyright">
      <name>Ekaterina Gerasimova</name>
      <email>kittykat3756@gmail.com</email>
      <years>2014</years>
    </credit>
    <credit type="author copyright">
      <name>Jana Svarova</name>
      <email>jana.svarova@gmail.com</email>
      <years>2015</years>
    </credit>

    <license xmlns="http://projectmallard.org/1.0/" href="https://creativecommons.org/licenses/by-sa/3.0/">
  <p>This work is licensed under a <link href="https://creativecommons.org/licenses/by-sa/3.0/">Creative
  Commons Attribution-ShareAlike 3.0 Unported License</link>.</p>
</license>

    <desc>Prevent users from accessing the command-line.</desc>
  </info>

  <title>Disable command-line access</title>

  <p>To disable command-line access for your desktop user, you need to make
  configuration changes in a number of different contexts. Bear in mind that the
  following steps do not remove the desktop user's permissions to access a
  command line, but rather remove the ways that the desktop user could access
  the command line.</p>

  <list>
    <item>
      <p>Set the <code>org.gnome.desktop.lockdown.disable-command-line</code>
      GSettings key, which prevents the user from accessing the terminal or
      specifying a command line to be executed (the <keyseq><key>Alt</key>
      <key>F2</key></keyseq> command prompt).</p>
    </item>
    <item>
      <p>Prevent users from accessing the <keyseq><key>Alt</key><key>F2</key>
      </keyseq> command prompt.</p>
    </item>
    <item>
      <p>Disable switching to virtual terminals (VTs) with the <keyseq>
      <key>Ctrl</key><key>Alt</key><key><var>function key</var></key></keyseq>
      shortcuts by modifying the X server configuration.</p>
    </item>
    <item>
      <p>Remove <app>Terminal</app> and all other terminal applications from
      the <gui>Activities</gui> overview in GNOME Shell. You will also need to
      prevent the user from installing a new terminal application.</p>
    </item>
  </list>

<section id="command-prompt">
  <title>Disable the command prompt</title>

  <steps>
    <item xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xml:id="dconf-profile-user">
    <p>Create the <file its:translate="no">user</file> profile which contains
    the following lines:</p>
    <listing its:translate="no">
      <title><file>/etc/dconf/profile/user</file></title>
      <code>user-db:user
system-db:local</code>
    </listing>
    <p><input its:translate="no">local</input> is the name of a
    <sys its:translate="no" xref="dconf">dconf</sys> database.</p>
  </item>
    <item>
      <p>Create a <sys>local</sys> database for machine-wide settings in
      <file>/etc/dconf/db/local.d/00-lockdown</file>:</p>
      <code># Specify the dconf path
[org/gnome/desktop/lockdown]

# Disable the command prompt
disable-command-line=true</code>
    </item>
    <item>
      <p>Override the user’s setting and prevent the user from changing it in
      <file>/etc/dconf/db/local.d/locks/lockdown</file>:</p>
      <code># List the keys used to configure lockdown
/org/gnome/desktop/lockdown/disable-command-line</code>
    </item>
    <item xmlns="http://projectmallard.org/1.0/" xml:id="dconf-update">
    <p>Update the system databases:</p>
    <screen><output style="prompt"># </output><input>dconf update</input></screen>
  </item>
    <item xmlns="http://projectmallard.org/1.0/" xml:id="dconf-logoutin">
    <p>Users must log out and back in again before the system-wide
    settings take effect.</p>
  </item>
  </steps>
</section>

<section id="virtual-terminal">
  <title>Disable dropping to a virtual terminal</title>

  <p>Users can normally use the
  <keyseq><key>Ctrl</key><key>Alt</key><key><var>function
  key</var></key></keyseq> shortcuts (for example,
  <keyseq><key>Ctrl</key><key>Alt</key><key>F2</key></keyseq>) to switch from
  the GNOME desktop to a virtual terminal.</p>

  <p>If the computer is running the <em>X Window System</em>, you can disable
  access to all virtual terminals by adding a <code>DontVTSwitch</code> option
  to the <code>Serverflags</code> section in an X configuration file in the
  <file>/etc/X11/xorg.conf.d/</file> directory.</p>

  <steps>
    <item>
      <p>Create or edit an X configuration file in
      <file>/etc/X11/xorg.conf.d/</file>. For example,
      <file>/etc/X11/xorg.conf.d/10-xorg.conf</file>:</p>
    <listing>
    <title><file>/etc/X11/xorg.conf.d/10-xorg.conf</file></title>
<code>Section "Serverflags"

Option "DontVTSwitch" "yes"

EndSection
</code>
    </listing>
    </item>
    <item>
      <p>Restart the X server for the changes to take effect.</p>
    </item>
  </steps>

</section>

<!-- TODO: add section for removing applications from the Activities overview. -->
</page>
