나는 $ORACLE_HOME/OPatch
디렉토리에 있고 입력하면 opatch
다음과 같은 응답을 얻습니다.
-bash: opatch: command not found
그렇게 하면 ./opatch
다음과 같은 응답을 받습니다.
/bin/sh: ./opatch: Permission denied
ls -l
OPatch
쇼 에서 -rwx--x---
.
그래서 그룹에게는설치하다, 실행 권한이 있어야 하며 id -g
사용자가 해당 항목에 속해 있음을 확인해야 합니다.설치하다그룹.
opatch
그렇다면 이 경우 왜 실행할 수 없습니까 ?
답변1
opatch
스크립트인 것 같습니다 . 즉, #!
인터프리터(아마도 /bin/sh
)로 시작하고 나열하는 텍스트 파일입니다. 컴파일된 바이너리(직접 실행 가능한 코드)만 읽기 권한 없이 실행할 수 있습니다. 모든 스크립트에 대해 인터프리터( sh
, python
등...)에 관계없이 인터프리터는 파일을 열 수 있어야 하며, 이는 읽기 권한과 실행 권한을 요구합니다.