Getting sudo to ask for password via the GUI

家住魔仙堡 提交于 2020-01-01 04:18:28

问题


I have a lua script, running on the Mac, that needs to call sudo.

I'd hoped that Mac OS would automatically bring up a password request dialog, but instead it the command fails by returning 256.

Is there anyway that I can achieve my goal?

Tim


回答1:


Quick and easy way: run it like this

/usr/bin/osascript -e 'do shell script "/path/to/myscript args 2>&1 etc" with administrator privileges'

Proper and configurable way: use AuthorizationExecuteWithPrivileges API from Authorization Services (in Security.framework).

Both will display standard Mac OS X GUI asking for administrator password and then execute the command as root, the same way as sudo does except that SUDO_USER environment variables will not be set.

If you need to execute individual commands from under user account when you're already elevated to root, you can prepend them with /usr/bin/sudo -u $USER.



来源:https://stackoverflow.com/questions/10283062/getting-sudo-to-ask-for-password-via-the-gui

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!