Ответ
dwr 02.03.2015 04:19
/ 02.03.2015 04:22
Относительно прав доступа, видимо либо группу на root еще не поменяли, либо что-то подобное, у меня все работает:
dwr@dwrbook: ~/projects/node-parser3/cgi master
$ ./parser3.cgi auto.p
Работает
dwr@dwrbook: ~/projects/node-parser3/cgi master
$ ls -la | grep auto
-rw-r--r-- 1 dwr staff 4071 Oct 24 2013 auto.p
dwr@dwrbook: ~/projects/node-parser3/cgi master
$ sudo -s
root@dwrbook: ~/projects/node-parser3/cgi master
# ./parser3.cgi auto.p
: './auto.p' parser is in safe mode: reading files of foreign group and user disabled [recompile parser with --disable-safe-mode configure option], actual filename './auto.p', fuid(501)!=euid(0) or fgid(20)!=egid(0) [parser.runtime]#
root@dwrbook: ~/projects/node-parser3/cgi master
# chown root:wheel auto.p
root@dwrbook: ~/projects/node-parser3/cgi master
# ./parser3.cgi auto.p Работает
Вероятно на linux будет root:root вместо root:wheel (так на Mac OS X и FreeBSD).
С другой стороны, в целом отключать safe mode не очень круто :)
Касательно sudo - перехода в другого пользователя:
sudo -u <имя пользователя> -s
sudo -u <имя пользователя> -i
И можно выполнять команды от его имени, например www-data (или кто владелец файлов?), sudo -u www-data -s