Я сделал скрипт для автоматического выключения компьютера. Проблема в том, что он всегда спрашивает пароль. Как это должно быть изменено?
do shell script "shutdown -h now" with administrator privileges and password
Я сделал скрипт для автоматического выключения компьютера. Проблема в том, что он всегда спрашивает пароль. Как это должно быть изменено?
do shell script "shutdown -h now" with administrator privileges and password
Несмотря на угрозу безопасности, один из способов сделать это - сменить владельца скрипта на root и затем изменить бит setuid.
создайте скрипт apple, как вы описали, и сохраните его на рабочем столе как shut_me_down
откройте терминал, перейдите в папку Desktop и запустите:
chmod -R u+s shut_me_down.app/
sudo chown -R root shut_me_down.app/
Теперь, когда вы дважды щелкнете по значку shut_me_down на рабочем столе, он должен выключиться без каких-либо подсказок.
Если вы ищете способ командной строки сделать это (вместо того, чтобы нажимать на значок на рабочем столе), тогда вы можете пропустить команду setuid/chmod и вместо этого отредактировать файл sudoers, используя
sudo visudo
Добавьте свой идентификатор пользователя, который может запускать sudo без пароля, а затем попробуйте запустить скрипт с помощью "sudo scriptname"
Вот ссылка, которая также может помочь: каждый раз запускать исполняемый файл от имени пользователя root - MacOSX.com
Ну вот:
do shell script "shutdown -h now" user name "me" password "mypassword" with administrator privileges
сделать сценарий оболочки "shutdown -h сейчас", теоретически будет .... но это приводит к предупреждению "не суперпользователя".
Насколько я могу судить, и это имеет смысл, вы должны быть суперпользователем, чтобы перезагрузить систему из командной строки. Почему это имеет смысл? потому что вы не хотите, чтобы кто-то перезагружал компьютер из сеанса ssh, если у него нет прав суперпользователя / root-доступа ...
Мне было бы интересно, если бы кто-нибудь нашел способ сделать это ....
Скотт точен ...
Скажите приложению "поиск" для перезагрузки - перезагрузите систему Скажите приложению "поиск" для выключения - выключение системы
Но это побудит пользователя сохранить любые несохраненные файлы ... Так что, если вы пытаетесь обойти запросы, это не сработает.
Разве это не сработает?
tell application "Finder" to shut down