Este problema me ha estado molestando por un tiempo.
De vez en cuando, necesito escribir un archivo de script que ejecute sudo
comandos. No necesariamente sé de antemano que voy a ejecutar, sudo
así que estoy seguro de que hay una manera de abrir una interfaz gráfica agradable (como la que aparece al instalar el software), pero ¿cómo?
El man sudo
dice:
-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
Así que estoy bastante seguro de que la solución reside en eso -A
y SUDO_ASKPASS
tupla, sin embargo, he logrado encontrar qué poner en eso.
gtksudo
okdesudo
. No sé qué hay en el lado de OS-X de las cosas, pero supongo que estás buscando algo en ese sentido.Respuestas:
OS X no tiene una forma completamente limpia de hacer esto, pero hay algunas formas de fingirlo. Primero, AppleScript tiene una buena manera de hacer cosas sudo-ish basadas en una autenticación gráfica, y puede usar eso:
También puede usar ese mecanismo para configurar la marca de tiempo de sudo, y luego usar el sudo regular (dentro de la ventana de tiempo de espera de 5 minutos) para hacer cosas:
Finalmente, puede usar AppleScript para solicitar una contraseña, luego pasarla a sudo:
fuente
OS X no viene con una interfaz gráfica para sudo, pero encontrará útil cocoasudo o macsudo .
fuente