Ich weiß, dass man, um ein CLI-Programm mit sudo auszuführen, aber ohne das Passwort eingeben zu müssen, nur Folgendes eingeben muss:
user ALL = NOPASSWD: /path/to/your/program
in /etc/sudoers oder noch besser in einer Datei in /etc/sudoers.d. Ich habe das probiert und es funktioniert ohne Probleme.
Bei GUI-Anwendungen ist das jedoch anders. Wenn ich beispielsweise versuche,
user ALL = NOPASSWD: /usr/sbin/gparted
in derselben Datei wird beim Start von GParted immer noch die übliche GUI-Passwortabfrage angezeigt.
Gibt es eine Möglichkeit, dasselbe Ergebnis für GUI-Anwendungen zu erzielen? Ich weiß nicht, ob es von der jeweiligen Desktop-Umgebung abhängt, aber ich vermute es, da jede von ihnen wahrscheinlich ein anderes Tool zum Anzeigen der Eingabeaufforderung verwendet.
In meinem speziellen Szenario verwende ich Kubuntu 18.04, daher gehe ich davon aus, dass die Frage für alle KDE-Distributionen gilt.
Antwort1
Es ist dasselbe. Aber denken Sie daran, das Programm auszuführen, das Sie ausführen müssen sudo program
. Wenn also ein Launcher das Programm startet, müssen Sie den Launcher an einen ausführbaren Wrapper weiterleiten, der Folgendes enthält:
#!/bin/bash
sudo «program»
Antwort2
Zusätzlich zu der akzeptierten Antwort, die perfekt funktioniert, möchte ich hinzufügen, dass ich in meinem speziellen Fall (unter KDE) nicht einmal ein ausführbares Skript erstellen und das Feld „Befehl“ im Menüeintrag auf dieses Skript verweisen muss.
Ich kann „sudo-Programm“ direkt in das „Befehls“-Feld des Menüeintrags eingeben, was sehr praktisch ist!