서버/Linux

[Linux] chmod 권한 설정

Jayksss 2022. 9. 29. 15:01

특정 솔루션의 파일들을 교체 후에 권한 오류가 발생했다.

 

허가 거부

새 파일들로 교체를 했으니 권한 설정 또한 새로 해야하는 모양.

 

대상 디렉토리에서

 

ls -al

 

명령어를 입력하면 해당 디렉토리의 목록이 나오고 맨 앞에 보면 아래 사진과 같이 rwx 등이 적혀있다.

이는 권한을 의미하는데 다음과 같다.

 

권한

r = 읽기, w = 쓰기, x = 실행 및

 

            d              ㅡ ㅡ ㅡ   ㅡ ㅡ ㅡ   ㅡ ㅡ ㅡ

디렉토리 구분      소유자       그룹        기타

 

 

ex) abc.txt라는 파일에 소유자 읽기 실행, 그룹 쓰기 실행, 기타 읽기의 권한이 부여되어 있다면 다음과 같다.

>>> -r-x--xr--

.txt 라는 파일이고 디렉터리가 아니기때문에 가장 앞의 d 는 빠진다.

 

 

대상 파일/경로에 권한을 부여하는 방법은 다음과 같다.

우선 위에 기재한 권한들을 각각 다음 표처럼 숫자로 치환하고,

해당 숫자들의 덧셈을 통하여 권한을 부여하면 된다.

권한 권한 명 치환된 숫자
r 읽기 4
w 쓰기 2
x 실행 1

 

ex) 읽기 + 쓰기 + 실행의 권한 부여 = 4 + 2 + 1 = 7

      쓰기 + 실행의 권한 부여 = 2 + 1 = 3

      읽기 + 실행의 권한 부여 = 4 + 1 = 5

 

 

그리고

chmod [권한] [파일 명]

명령어를 사용하여 권한을 부여하면 된다.

ex) 소유자에 읽기 + 쓰기 + 실행 권한, 그룹에 쓰기 + 실행 권한, 기타에 실행 권한 부여

>>> chmod 731 test.txt

 

이렇게 하면 권한이 부여 된다.