pátek 29. března 2013

Ubuntu: Jak vypnout nebo restartovat počítač, jestliže je přihlášený druhý uživatel

Chcete-li vypnout nebo restartovat počítač, na kterém je přihlášený ještě nějaký jiný uživatel, nepovede se vám to a pouze se odhlásíte z vašeho sezení. Tato ochrana je v Ubuntu zabudovaná proto, aby nedošlo ke ztrátě dat v nějaké rozpracované práci druhého přihlášeného uživatele. Někdy se však stane, že nemůžete druhého uživatele kontaktovat a počítač potřebujete vypnout nebo restartovat bez ohledu na to, co druhý uživatel na počítači dělá nebo má rozpracováno. Pak existují dvě možnosti jak toho dosáhnout. Máte-li práva administrátora, stačí v terminálu zadat příkaz
sudo shutdown -h now
pro vypnutí počítače nebo
sudo shutdown -r now
pro restart počítače.

V případě, že chcete, aby mohl počítač vypnout i uživatel, který nemá práva administrátora, nebo aby nebylo nutné zadávat výše uvedené příkazy do terminálu, stačí změnit následující sekce v souboru /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy.

Samozřejmě musíte změnu provést pod uživatelem, který má administrátorská práva.
sudo gedit /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy
V souboru pak musíte změnit sekci, která se týká vypnutí počítače v multiuživatelském režimu:
<action id="org.freedesktop.consolekit.system.stop-multiple-users">
  <description>Stop the system when multiple users are logged in</description>
  <message>System policy prevents stopping the system when other users are logged in</message>
  <defaults>
    <allow_inactive>no</allow_inactive>
    <allow_active>auth_admin_keep</allow_active>
  </defaults>
</action>
na
<action id="org.freedesktop.consolekit.system.stop-multiple-users">
  <description>Stop the system when multiple users are logged in</description>
  <message>System policy prevents stopping the system when other users are logged in</message>
  <defaults>
    <allow_inactive>no</allow_inactive>
    <allow_active>yes</allow_active>
  </defaults>
</action>
a dále sekci, která se týká restartování počítače v multiuživatelském režimu
<action id="org.freedesktop.consolekit.system.restart-multiple-users">
  <description>Restart the system when multiple users are logged in</description>
  <message>System policy prevents restarting the system when other users are logged in</message>
  <defaults>
    <allow_inactive>no</allow_inactive>
    <allow_active>auth_admin_keep</allow_active>
  </defaults>
</action>
na
<action id="org.freedesktop.consolekit.system.restart-multiple-users">
  <description>Restart the system when multiple users are logged in</description>
  <message>System policy prevents restarting the system when other users are logged in</message>
  <defaults>
    <allow_inactive>no</allow_inactive>
    <allow_active>yes</allow_active>
  </defaults>
</action>