Tom's Note
article thumbnail
반응형
평소 "chmod' 명령어는 옵션을 사용할 일이 거의 없다.

파일 1개만 권한을 주면 권한모드와 파일만 입력하면 된다.

하지만 디렉터리 하위에 모두 적용 시킨다면 옵션 "-R"이 필요하다. 그 이상은 잘 쓰지 않는다. 

 

권한을 관리하는 이유는 해당 사용자의 접근을 제어하기 위함이다.

하나의 예로 프로그램이 실행하고 프로그램에서 파일을 생성하거나 읽을 때 permmision error가 발생하는 경우가 있다.

permission에서 봤듯이 권한제어가 안되어 있기 때문이다. 프로그램이라고 하면 프로그램을 사용하는 사용자나 그룹 또는 외부 접근에 관한 permission이 주어 지지 않아서 발생한 것이다. 

따라서 chmod를 사용해 권한을 수정하는 행위는 위와 같은 권한 제어를 하기 위함이라고 보면 될 것이다. 

1) 옵션보다 모드변경에 집중하여 숙지한다.
2) 권한 모드는 사용자 권한(u), 그룹 권한(g), 외부 권한(x)이 있다.
3) 표기는 8진수로 표기가 되며 설정은 문자나 8진수 모두 가능하다.

chmod 이기에 rwx만 설명한다.

** 위 파일 목록 그림을 보면 "rwxr-xr-x" 라고 표기 되어있다.
사용자 rwx, 그룹 r-x, 외부 r-x 권한으로 주어진다.

이제 모드 설정을 익히고 사용자 권한을 어떻게 주는지 보자. 
문자로 모드 설정
User(u) --> 추가(+) --> 읽기(r)
Group(g) 제거(-) 쓰기(w)
Others(o) 지정(=) 실행(x)
All(a) - -
예시) --- --- --- 모든 권한이 없는 상태에서 위 그림과 같이  rwxr-xr-x로 만들어 보자.
1) chmod u=rwx,g=rx,o=rx ( 한 번에 주기 ) 
2) chmod u=rwx,go=rx ( 한번에 주면서 같은 권한 끼리 맞추기 )  
3) chmod u=rwx; chmod g=rx; chmod o=rx; ( 따로 설정했을 때 사용하기 )

위와 같이 단일로 주거나 복수로 할당하거나 여러 형태로 줄 수 있음으로 익숙해지면 효률적으로 줄 수 있게 되니 잘 숙지하기 바란다.

 

Oct(8진수)로 모드 설정
읽기(r) 4 rwx : 7
rw- : 6
r-x : 5
r-- : 4
-wx : 3
-w- : 2
--x : 1
--- : 0
쓰기(w) 2
실행(x) 1
권한없음(-) 0
예시) --- --- --- 모든 권한이 없는 상태에서 위 그림과 같이  rwxr-xr-x로 만들어 보자.
1) chmod 755

한 번에 주는 것 밖에 할 수없다.

 

recursive 하위 파일 설정
하위 파일까지 적용하려면 "-R" 옵션을 정해야 한다.
예시) chmod -R 755 test : test 또는 test 하위의 파일이 지정된 권한으로 모두 변경된다.

 

해당 디렉터리의 권한을 모두 제거하나 접근을 위해 실행권한만 주기를 원할 때
chmod -R a-x,a+X test : test 디렉토리와 하위 파일의 실행 권한을 모두 제거하고 X를 통해 디렉터리만 실행 권한을 부여한다. 

이렇게 되면 쓰기와 읽는 되지 않지만 디렉토리 내부로 접근이 가능하게 된다. 
최소한 어떤 파일이 있는지는 접근이 가능하다는 말이다.

 

2021.10.21 - [분류 전체보기] - [리눅스/명령어] chmod 특수권한

반응형
profile

Tom's Note

@크크크크

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!