Auf der Handbuchseite von gksu steht, dass es sich um ein Frontend für su handelt. Allerdings benötigt su zur Ausführung keinen Befehl, während gksu dazu nötig ist. Außerdem scheint gksu die Benutzer-ID meiner Shell nicht zu ändern, während su dies tut. Ist es möglich, gksu genau wie su funktionieren zu lassen, indem nur das Benutzerpasswort abgefragt und die Shell-UID geändert wird?
Gibt es außerdem einen Unterschied zwischen gksu und gksudo?
Antwort1
gksu würde normalerweise den Root-Benutzer anmelden und in dieser Sitzung eine App ausführen
In einigen Systemen wie Ubuntu sind gksu und gksudo symbolisch verknüpft, was im Grunde bedeutet, dass Sie unabhängig vom verwendeten Befehl einfach gksudo verwenden, da /apps/gksu/sudo-Modus aktiviert ist.
Normalerweise würde gksu den Root-Benutzer anmelden und in dieser Sitzung eine App ausführen. gksudo/sudo hingegen lässt den Benutzer angemeldet und verleiht ihm Root-Berechtigungen.
Sie sollten niemals normales sudo verwenden, um grafische Anwendungen zu starten. Sie sollten stattdessen gksudo verwenden. gksudo setzt HOME=~root und kopiert .Xauthority in ein temporäres Verzeichnis. Dadurch wird verhindert, dass Dateien in Ihrem Home-Verzeichnis root gehören. (Soweit ich weiß, ist dies alles, was an der Umgebung des gestarteten Prozesses mit gksudo gegenüber sudo anders ist).
Antwort2
Gksu ist ein Tool, mit dem ein Benutzer ein GUI-Programm als Root ausführen kann. Es macht für X-Programme das, was sudo für Befehle macht. Soweit ich weiß, sind gksu und gksudo dasselbe.