2014-09-30 4 views
0

Я пытаюсь создать скрипт, который будет редактировать файл моих хостов, чтобы блокировать отвлекающие сайты. Я пытаюсь сделать это через Python на моем mac. Я сделал скрипт, который редактирует хост-файл, но я только был в состоянии выполнить его, запустивДайте полномочия администратора сценария python для mac

sudo python change_hosts.py 

я хотел бы быть в состоянии запустить его, вызвав его из другого сценария. Есть ли все-таки я могу упаковать/обернуть скрипт таким образом, чтобы его можно было запускать без необходимости проходить через терминал каждый раз? Могу ли я дать ему специальное разрешение на редактирование хостов без проблем безопасности? Я где-то читал о токере os admin, что-то вроде этого возможно в сценарии python, чтобы я мог ввести пароль один раз при загрузке или что-то еще?

Любая помощь приветствуется, спасибо заранее

+1

sudo является «пользователем-заменителем», и я думаю, что если вы вызовете из скрипта, выполняемого как пользователь root, другому сценарию, этот последний скрипт должен быть выполнен как пользователь root. Итак, вызывать первый скрипт с помощью sudo может быть достаточно. – aabilio

+0

Вы читали [это] (http://stackoverflow.com/questions/17950780/calling-python-script-from-another-script)? Если вы все еще не можете заставить его работать, у вас, вероятно, есть какие-то права. –

ответ

0

Я не имею Mac, так что я не знаю, если это будет работать, но попробуйте suid-python, который является C программа, написанная Стивен Эллиот. Вы должны скомпилировать его самостоятельно, но инструкции хороши. Впоследствии у вас будет исполняемый файл, который будет запускаться и выполнять чести, написанные на Python.

Смежные вопросы