"плохой интерпретатор: в доступе отказано" Как я могу предотвратить эту ошибку?

Я хочу запустить программу напрямую, такую ​​как ./program без определения интерпретатора в оболочке в первую очередь. Итак, как я могу предотвратить эту ошибку?

плохой переводчик: в доступе отказано

Моя операционная система Redhat - CentOS выпуск 5.6 (финал)

root@server [/tmp/mechanize-0.1.7b]# ./functional_tests.py 
-bash: ./functional_tests.py: /usr/bin/env: bad interpreter: Permission denied
root@server [/tmp/mechanize-0.1.7b]#
root@server [/tmp/Python-2.7.1]# ./configure 
-bash: ./configure: /bin/sh: bad interpreter: Permission denied
root@server [/tmp/Python-2.7.1]#

2 ответа

Решение

Вы пытаетесь выполнить программы из раздела, смонтированного с noexec вариант (вероятно /tmp). Либо переместите их в каталог, который смонтирован с exec права или использование

mount -o remount,exec /tmp

(как root), чтобы позволить программам выполняться на /tmp, Вы можете сделать это поведение постоянным, удалив noexec вариант из /etc/fstab или ваши сценарии инициализации.

Long-shot, but make sure that /tmp isn't mounted with the noexec опция монтирования That can give errors like that.

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