Mac で実行されている lua スクリプトがあり、sudo を呼び出す必要があります。
Mac OS が自動的にパスワード要求ダイアログを表示することを望んでいましたが、コマンドは 256 を返して失敗しました。
私の目標を達成できる方法はありますか?
ティム
すばやく簡単な方法: このように実行します
/usr/bin/osascript -e 'do shell script "/path/to/myscript args 2>&1 etc" with administrator privileges'
適切で構成可能な方法: AuthorizationExecuteWithPrivileges
Authorization Services (Security.framework 内) の API を使用します。
SUDO_USER
どちらも標準の Mac OS X GUI を表示して管理者パスワードを要求し、root としてコマンドを実行します。これは、環境変数が設定されないことを除いて sudo と同じ方法です。
すでにルートに昇格しているときに、ユーザー アカウントで個々のコマンドを実行する必要がある場合は、先頭に/usr/bin/sudo -u $USER
.