Ubuntu: Ersatz für gksu

Bis Ubuntu 18.04 gab es das Hilfsprogramm gksu, mit dessen Hilfe man – zum Beispiel innerhalb eines Scriptes – ein anderes Programm als Root starten konnte, indem man „zwischendurch“ das nötige Passwort eingab. Ab dieser Version wurde das aus den Paketquellen entfernt, weil es als Sicherheitsrisiko eingestuft wurde. Damit funktionierten dann plötzlich alle Scripte und (bei mir) Shortcuts nicht mehr, die darauf angewiesen waren (siehe hier bei mir Upgrade Ubuntu 16 nach 18: einige Hürden).

Es gibt Anleitungen im Netz, wie das Problem behoben werden kann, indem man Pakete aus alten Ubuntu-Quellen (Archiv) installiert. Das ist sicher etwas fragwürdig und kann auch kein Update bekommen.

Viel besser ist da der reguläre Weg, der mit dem Befehl sudo arbeitet:

sudo -A <programm>

Das -A bewirkt die Einbindung eines als Askpass bezeichneten Hilfsprogramm, dass das Passwort grafisch (!) abfragt und über sein stdout an den Aufrufer zurückgibt. Allerdings muss dazu etwas getan werden, sonst gibt es eine Fehlermeldung. Zunächst wird der Helfer installiert, der eigentlich für den SSH-Zugriff gedacht ist:

sudo apt install ssh-askpass-gnome

Dann öffnet man als Root die Datei /etc/sudo.conf und fügt eine Zeile zu:

# Use the OpenSSH askpass
#Path askpass /usr/X11R6/bin/ssh-askpass
Path askpass /usr/lib/openssh/gnome-ssh-askpass

Es ist kein Neustart nötig – der nächste Aufruf von „sudo -A“ funktioniert!