Sie können das Passwort über die GUI-Eingabeaufforderung mit Hilfe von abfragen -A, --askpass
.
Aus der Manpage:
-A, --askpass
Normally, if sudo requires a password, it will read it from the user's terminal. If the -A
(askpass) option is specified, a (possibly graphical) helper program is executed to read the user's
password and output the password to the standard output. If the SUDO_ASKPASS environment variable
is set, it specifies the path to the helper program. Otherwise, if sudo.conf(5) contains a line
specifying the askpass program, that value will be used. For example:
# Path to askpass helper program
Path askpass /usr/X11R6/bin/ssh-askpass
If no askpass program is available, sudo will exit with an error.
Sie können also ein grafisches Hilfsprogramm erstellen, z. B. ssh-askpass
das einen Benutzer mit GNOME zur Eingabe einer Passphrase auffordert :
$ which ssh-askpass
/usr/bin/ssh-askpass
Fügen Sie also die folgende Zeile hinzu /etc/sudo.conf
:
# Path to askpass helper program
Path askpass /usr/bin/ssh-askpass
Und Sie finden eine Eingabeaufforderung für das GUI-Passwort:
Sie können auch ein anderes Programm wie zenity
dieses verwenden. Beispiel verwende ich folgendes:
$ cat /etc/sudo.conf
# Path to askpass helper program
Path askpass /usr/local/bin/zenity_passphrase
Wo zenity_passphrase
ist ein benutzerdefiniertes Skript festgelegt , das direkt als Befehl verwendet werden soll:
$ cat $(which zenity_passphrase)
#!/bin/bash
zenity --password --title="sudo password prompt" --timeout=10
Welches funktioniert wie:
Hinweis:
Sie können auch gksudo
(GTK + Frontend für su und sudo) anstelle des sudo
Skripts verwenden, das mit der GUI-Eingabeaufforderung fragt:
Sie können pkexec
( polkit application) auch mit einigen (für andere muss es konfiguriert werden) Anwendungen / Befehlen verwenden:
pkexec leafpad
wird esCannot open display:
nach Eingabe des Kennworts angezeigt . Ist eine zusätzliche Konfiguration erforderlich?DISPLAY=:0 pkexec leafpad
Cannot open display:
erscheint