Linux

[Mac OS] permission denied 에러

2022. 11. 16. 19:46

permission dinied

 

Gradle task를 터미널에서 실행하기 위해 프로젝트 경로에서 아래 명령을 실행했더니

./gradlew build

 

아래와 같은 에러가 발생했다.

zsh: permission denied: ./gradlew

 

단순히 해당 파일에 대한 권한이 부여되지 않아 생기는 문제이며,

 

아래 명령을 실행하여 리스트를 출력하면 권한(Permission)을 확인할 수 있다.

ls -al

 

 

왼쪽부터 파일 종류 및 권한 / 링크 수 / 사용자 이름 / 그룹 / 파일 크기 / 수정된 시간 / 파일 이름을 나타내며,

 

이 중 파일 종류 및 권한은 4부분으로 나눌 수 있다.

 

d / rwx / r-x / r-x  :  파일, 디렉토리 구분 / 사용자(user) 권한 / 그룹(group) 권한 / 다른 사용자(other) 권한

 

d, - : 디렉토리(d), 파일(-)을 구분

r : 읽기(read) 권한

w : 쓰기(write) 권한

x : 실행(execute) 권한

 

 

위의 사진에서 gradlew 파일의 권한은 -rw-r--r-- 이므로 실행 권한이 없어서 permission denied 에러가 발생한 것이다.

 

간단하게 해당 파일의 권한을 변경해주면 해당 파일을 실행할 수 있다.

chmod u+rwx gradlew

 


chmod 명령어

 

chmod (u g o)+(r w x) 파일명

 

ex) 그룹(g)과 다른 사용자(o)에게 읽기(r) 권한을 부여한다.

chmod go+r test.txt

 

 

chmod 000 파일명

 

r은 4, w는 2, x는 1로 계산하며, 각 자리수는 사용자, 그룹, 다른 사용자를 뜻한다.

 

ex) 사용자에게는 모든 권한을 부여하며, 그룹과 다른 사용자에게는 읽기 권한만 부여한다.

chmod 744 test.txt

+ Recent posts