"Поганий перекладач: У дозволі відмовлено" Як я можу запобігти цій помилці?


5

Я хочу запустити програму безпосередньо, наприклад, ./programбез визначення інтерпретатора в оболонці спочатку. Отже, як я можу хочу запобігти цю помилку?

поганий перекладач: у дозволі відмовлено

Моя операційна система перероблена - випуск 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]#

Незвичайно. Поза темою, але ... "мають" / bin / sh, і це + x'ed?

Відповіді:


9

Ви намагаєтеся виконати програми з розділу, встановленого за допомогою noexecпараметра (ймовірно /tmp). Або перемістіть їх у каталог, встановлений із execправами, або використовуйте

mount -o remount,exec /tmp

(як root), щоб дозволити виконання програм на /tmp. Ви можете зробити цю поведінку стійкою, видаливши noexecопцію зі /etc/fstabсвоїх сценаріїв init.


досі не працюєroot@server [/tmp/Python-2.7.1]# mount -o remount,exec /tmp root@server [/tmp/Python-2.7.1]# ./configure -bash: ./configure: /bin/sh: bad interpreter: Permission denied root@server [/tmp/Python-2.7.1]#
Юда Правіра

@Gunslinger_ теж /може бути встановлений noexec. Чи можете ви дати нам результати mountта ls -l /bin/sh?
фігаг

2

Довгостроковий, але переконайтеся, що /tmpвін не встановлений за допомогою noexecпараметра кріплення. Це може призвести до таких помилок.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.