Как работать, 'chmod' управляют сценарием формы с sudo полномочиями?

Я хочу изменение полномочия /dev/ttyACM0 из сценария.

Я попробовал эту команду:

su -c "chmod -R 777 /dev/ttyACM*" -m "$user".

Когда я выполняю сценарий, он просит пароль. Я хочу, выполняет это, не будучи запрошенным пароль.

Я пытался включить пользователя /etc/sudoers, но это не работает.

Это - сценарий CGI. Это не работает внешние запросы (т.е. от другого дюйм/с).

user ALL= (user)  NOPASSWD: /usr/lib/cgi-bin/test.cgi

Как я могу сделать, изменяют полномочия так, чтобы кто-либо мог выполнить сценарий от других IP-адресов?

2
задан 9 October 2015 в 16:50

1 ответ

Вы не сказали, почему sudo решение не работает, но расследующий sudo довольно обременительно. Эта испытательная линия в /etc/sudoers работала на меня

cgiuser ALL = (root) NOPASSWD: /bin/chmod -R 777 /tmp/xxx*

, так дайте ей попытку. Ваш /etc/sudoers линия была бы

user ALL = (root) NOPASSWD: /bin/chmod -R 777 /dev/ttyACM*

, и Ваш сценарий будет иметь

/usr/bin/sudo /bin/chmod -R 777 /dev/ttyACM*

, Просто удостоверяются, что сценарий бежит как user для cgi сценария, который это, вероятно apache или www-data.

пз: предыдущий ответ просто неправильный. При условии, что Вы принадлежите sudo группа или иначе имеете привилегии, sudo su - работы отлично, чтобы стать корнем, даже если никакой пароль корня не установлен. sudo -s, вероятно, лучше, как бы то ни было. YMMV

0
ответ дан 2 December 2019 в 23:54

Другие вопросы по тегам:

Похожие вопросы: