Dieses Problem nervt mich jetzt schon eine Weile.
Hin und wieder muss ich eine Skriptdatei schreiben, die sudo
Befehle ausführen soll . Ich weiß nicht unbedingt im Voraus, dass ich so laufen werde, sudo
daher bin ich sicher, dass es eine Möglichkeit gibt, eine schöne grafische Oberfläche zu öffnen (wie die, die bei der Installation von Software auftaucht), aber wie?
Der man sudo
sagt:
-A Normally, if sudo requires a password, it will read it from the current 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, the value specified by the askpass option in
sudoers(5) is used
Ich bin mir also ziemlich sicher, dass die Lösung darin liegt -A
und SUDO_ASKPASS
Tupel, aber ich habe es geschafft, herauszufinden, was ich in diese einbauen kann.
gtksudo
oder behandeltkdesudo
. Ich weiß nicht, was es auf der OS-X-Seite gibt, aber ich gehe davon aus, dass Sie nach etwas in dieser Richtung suchen.Antworten:
OS X hat keine völlig saubere Möglichkeit, dies zu tun, aber es gibt einige Möglichkeiten, dies zu fälschen. Erstens hat AppleScript eine gute Möglichkeit, auf der Grundlage einer grafischen Authentifizierung schaumige Dinge zu tun, und Sie können dies verwenden:
Sie können diesen Mechanismus auch verwenden, um den Sudo-Zeitstempel festzulegen, und dann den regulären Sudo (innerhalb des 5-Minuten-Timeout-Fensters) verwenden, um folgende Aktionen auszuführen:
Schließlich können Sie AppleScript verwenden, um nach einem Kennwort zu fragen, und dieses dann an sudo übergeben:
quelle
OS X enthält kein grafisches Frontend für sudo, aber Sie finden Cocoasudo oder Macsudo hilfreich.
quelle