... besonders für Linux Mint 19 und auch andere.
Bisher konnte man
vorhandene grafische Anwendungen mit Admin-Rechten ausführen durch:
gksu kommando
Dann wurde grafisch das Admin-Passwort angefordert und – wenn richtig – das
kommando mit Admin-Rechten ausgeführt.
Seit Linux Mint 19 bzw. Ubuntu 18.04 ist das Kommando
GKSU verbannt worden; es gibt es nicht einmal mehr in den Paketquellen.
Linux-Nerds begrüßen diese Verbannung freudig und als selbstverständlich. Erklärt wird das mit Sicherheitsgefährdung beim Ausführen grafischer Programme unter Admin-Rechten. Das mag richtig sein.
Doch was macht der ungeübte Anwender, der nicht in der Lage ist, vorhandene Programme oder auch nur Skripte zu ändern, um die »offiziellen« policy-Befehle einzufügen, und wenn der Hersteller eines solchen Programms oder Skripts das nicht tut. Und wenn das immer wieder zitierte Prefix
admin:// nicht funktioniert.
Liebe Mint-/Ubuntu-Leute: Es ist zwar schön, dass ihr euch um die Sicherheit eurer Anwender Sorgen macht; aber es ist nicht die feine Art, ein Werkzeug einfach zu verbannen, ohne eine sofort anzuwendende Alternative zu bieten, und zwar gerade für den ungeübten Anwender. Immerhin hat sich Mint zu Recht zu der wohl derzeit anwender- und umsteigerfreundlichsten Linux-Distribution entwickelt; und darauf solltet ihr Rücksicht nehmen.
Zwei Beispiele aus meiner Praxis (möglicherweise nicht gerade das, was andere machen; aber da gibt es sicher vieles ähnliche):
Inzwischen haben sich auch etliche andere zu Wort gemeldet, die so denken wie ich, und manche haben einfach ein
gksu-Skript als Ersatz angeboten. Auch ich habe mir so etwas gemacht und gebe es einfach mal hier an:
---------------------------------------------
#!/bin/bash
if passwort=$(zenity --entry --hide-text --text "Für die Ausführung sind Admin-Rechte notwendig\nBitte Admin-Passwort eingeben:" --title "Passwort eingeben" 2> /dev/null); then
if ! [ -z $passwort ]; then # Passwort eingegeben, nicht leer
echo "$passwort" | sudo -S -i -k pwd > /dev/null 2> /dev/null
if ! [ $? -eq 0 ]; then # Passwort nicht das richtige
zenity --warning --no-wrap --text "Ungültiges Passwort!" --title "Passwort" 2> /dev/null
else # Passwort richtig
echo "$passwort" | sudo -S -i -k $@ 2> /dev/null # Kommando ausführen
if ! [ $? -eq 0 ]; then # fehlerhafte Ausführung
zenity --warning --no-wrap --text "Kommando konnte nicht ausgeführt werden!" --title "Passwort" 2> /dev/null
fi
fi
else #leeres Passwort
zenity --warning --no-wrap --text "Leeres Passwort!" --title "Passwort" 2> /dev/null
fi
fi
exit 0
---------------------------------------------
Wenn Sie dieses Skript verwenden wollen, kopieren Sie den Text in eine Textdatei, nennen diese »gksu« und speichern sie in ihrem Home-Verzeichnis in dem Verzeichnis
bin. Sollte es das Verzeichnis
~/bin bzw.
/home/{benutzer}/bin bei Ihnen noch gar nicht geben, legen sie es einfach an. Nach Neu-Anmelden steht Ihnen
gksu wie gewohnt zur Verfügung.
(Zusätzlich muss das Paket
»Zenity« installiert sein; das ist aber bei Mint 19 vorinstalliert der Fall.)
Und da gibt es noch
eine andere Möglichkeit, das verbannte
GKSU zu ersetzen: Falls noch nicht geschehen, installiere man das Paket
»Menu«, das in den Paketquellen vorhanden ist. Damit gibt es das – noch nicht verbannte – Kommando
su-to-root, mit dem sich dasselbe wie mit
gksu errreichen lässt, und zwar mit dieser Schreibweise:
su-to-root -X -c kommando
Das funktioniert bei mir auch in dem oben genannten Beispiel zu »Öffnen mit« mit
Geany:
su-to-root -X -c geany %F
Allerdings muss man bei dieser Alternative überall, wo
gksu vorkommt, dies durch das andere Kommando ersetzen.
Geschrieben: Oktober 2018 – Letzte Änderung: 04.06.2023