Manchmal kann es vorkommen dass man ein Programm mit grafischer Benutzeroberfläche wie z.B. Gedit oder Nautilus mit Rootrechten aufrufen möchte/muss. Man sollte es vermeiden das Programm einfach im Terminal mit dem Befehl sudo gedit aufzurufen. Dies funktioniert zwar, allerdings besteht die Gefahr dass das Programm dann mit Rootechten die eigene Konfigurationsdateien im Home-Verzeichnis des ursprünglichen Benutzers überschreibt und diese Dateien beim nächsten Start des Programms mit Userrechten nicht mehr gelesen werden können.

Dies kann auf zwei Arten vermieden werden.

1. Aufruf mit dem Parameter -H

sudo -H gedit

Ein Aufruf des Programms mit dem Parameter -H im Terminal bewirkt dass das Programm das Homeverzeichnis des Root users /root als Homeverzeichnis genutzt wird und nicht das des aktuellen Benutzers. Dieser Aufruf funktioniert allerdings nur aus dem Terminal heraus, man kann keinen Programmstarter anlegen, oder den Befehl über den Ausführen Dialog über ALT+F2 ausführen.

2. Verwendung von gksu

Gksu dient zum Ausführen von GUI Programmen auf Desktopsystemen mit Rootrechten. Sofern noch nicht installiert, kann dies mit sudo apt install gksu nachgeholt werden.

Anschließend kann das Programm mit

gksudo gedit

aufgerufen werden. Es erscheint eine grafische Passowrtabfrage, anschließend wird das Programm mit Rootrechten gestartet. Der Aufruf mit gksu funktioniert auch in Programmstartern oder dem Ausführen Dialog.


Dieser Text ist lizensiert unter einer Creative Commons Namensnennung 4.0 International Lizenz.

1 Comment

  1. Anonymous

    Hallo Niko,
    Dieser Artikel ist nicht mehr aktuell. Kannst du mal die aktuelle Möglichkeit erklären?