-bash: ./java: 권한이 거부되었습니다.

-bash: ./java: 권한이 거부되었습니다.

내 웹서버에서 Java를 실행하려고 합니다(대여만 해당). java.com에서 JRE를 다운로드하여 홈 디렉토리의 로컬 폴더에 추출했습니다.

실행 파일 bin/java을 실행할 수 있도록 권한을 변경했습니다. 현재 권한은 -rwxrwxrwx파일에 있습니다. 따라서 기본적으로 777권한이 올바른지 확인하는 것입니다.

하지만 실행하려고 하면 항상 다음과 같은 오류가 발생합니다.-bash: ./java: Permission denied

Java를 실행할 가능성이 있나요? 공급자는 사용자가 홈 디렉터리에서 실행 파일을 실행하는 것을 방지할 수 있습니까?

당신의 도움을 주셔서 감사합니다!

답변1

따라서 기본적으로 777은 권한이 올바른지 확인하는 것입니다.

777화잘못된권한. 777을 사용하면 누구나 프로그램을 실행할 수 있지만 755도 완벽하게 작동합니다.

공급자는 사용자가 홈 디렉터리에서 실행 파일을 실행하는 것을 방지할 수 있습니까?

예. 플래그를 사용하여 홈 디렉토리를 마운트하면 noexec표시되는 동작을 생성할 수 있습니다(너무 제한하지 않으면 mount 명령이 마운트 플래그를 표시할 수 있음).

다음과 같은 명령을 사용하여 문제를 해결할 수 있습니다./lib64/ld-linux-x86-64.so.2 bin/java

거부된 권한은 Java 바이너리가 의존하는 라이브러리 중 하나에 대한 것일 수도 있습니다.

관련 정보