Die von K.Chen gestellte Frage lautet: Warum brauche ich Sudo-Berechtigungen, wenn ich dies über die CLI mache, obwohl ich solche Privilegien nicht benötige, wenn ich es über die GUI mache?
Der erste Teil der Antwort lautet, dass Benutzer, die Desktop-Umgebungen wie Gnome, KDE, Xfce, Mate, Cinnamon usw. entwerfen, versuchen, die Arbeit ihrer Benutzer zu vereinfachen, und das Herunterfahren und Neustarten konfigurieren, ohne dass Sudo-Anmeldeinformationen erforderlich sind. Dies impliziert im Übrigen, dass es eine Sequenz zum Herunterfahren geben muss, die nicht das Herunterfahren des Programms beinhaltet, für das Sudo-Berechtigungen erforderlich sind (daran führt kein Weg vorbei).
Ich weiß nicht im Detail, wie jedes DE es macht, aber ich weiß, dass es eine sanfte Möglichkeit gibt, Ihr System herunterzufahren oder neu zu starten / herunterzufahren / in den Ruhezustand zu versetzen, für die keine Root-Rechte erforderlich sind. Sie finden den Originalbeitrag in einem Beitrag im Arch Linux Forum . Im Wesentlichen kommt es darauf an, diese Befehle auszugeben:
Halt
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit"/org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
Neustart
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
dbus-suspend
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
überwintern
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Hibernate
Ich vermute, dass die GUI-Schaltflächen ungefähr diese Befehle verwenden. Um sicher zu sein, sollte man sich den Code ansehen, aber ich glaube, das ist eine sichere Sache.