실행 권한 비트가 설정된 파일을 실행할 수 없습니다.

실행 권한 비트가 설정된 파일을 실행할 수 없습니다.

글쎄요, 저는 Linux를 처음 접했지만 알아야 할 사항에 막혀 있는데 잘 모르겠습니다. 내 파일에는 다음과 같은 권한 비트 세트가 있습니다.

-r-xr-xr-x

속합니다 root(그러나 모든 사용자에게 활성화되어 있더라도 중요하지 않습니다 -x) 쓰기가 불가능하고 CDROM에 상주하기 때문에 CDROM으로 설치된 가상 ISO도 소리는 좋지만 실행할 수 없습니다. "권한이 거부되었습니다"라고 표시되나요? 마운트 자체에는 실행 권한이 있으므로 실행해야 하는 이유는 무엇입니까?

편집하다

문제를 해결했지만 bash ./autorun.sh 명시적으로 작동 할 것이라고 예상했던 것과는 달랐습니다 root. 내부 내용을 이해하려면 어쨌든 계정이 필요했지만 작동합니다.

답변1

가장 가능성 있는 설명은 다음과 같습니다.패트릭의: 이 옵션을 사용하면 파일 시스템이 noexec마운트되므로 모든 파일의 실행 권한 비트가 무시되고 파일 시스템에 있는 프로그램을 직접 실행할 수 없습니다. noexec마운트 옵션은 userin 옵션에 의해 암시 됩니다 /etc/fstab(아마도 보안상의 이유로 nodevnosuid옵션 과 달리 noexec실제로 보안을 제공하지는 않습니다). 을 사용 user하고 실행 파일을 갖고 싶다면 user,exec.

그것은 또한 가능하다셰르본스크립트 줄은 존재하지만 실행할 수 없는 파일을 가리킵니다. 이 경우에는오류 메시지가 스크립트를 혼동스럽게 참조합니다.통역사에게 오류가 있는 경우에도 마찬가지입니다. 그러나 shebang이 잘못된 기존 파일을 가리킬 가능성은 거의 없습니다(오류가 "찾을 수 없음"인 경우 매달린 shebang이 더 의미가 있음).

관련 정보