접근 권한 변경(chmod)
- chmod 명령: 기존 파일 또는 디렉토리에 대한 접근 권한(파일 모드)을 변경할 때 사용
- 파일 모드의 변경은 파일 소유자나 슈퍼 유저만 가능
- 파일 모드는 기호(문자)나 8진수로 지정
1. chmod 명령 도움말
- 주요 옵션
옵 션 | 설 명 |
-R | 하위 디렉토리와 파일의 권한 까지 변경 (동일 권한을 디렉토리와 파일에 지정) |
2. 접근 권한을 기호(문자)로 표현
- 문자 표기법은 변경할 사용자(대상), 수행할 명령(연산), 설정할 퍼미션(접근 권한) 세 부분으로 분류됨
- 다른 대상의 속성을 건드리지 않고 한 대상 속성만을 설정할 수 있는 장점을 가짐
- 복수 지정은 콤마(,)를 사용하여 구분
구 분 | 기 호 | 설 명 |
사용자 (대상) | u | user의 약자, 파일이나 디렉토리 소유자를 의미 |
g | 그룹 소유자 | |
o | others의 약자, 기타 사용자를 의미 | |
a | all의 약자, u,g,o의 조합 | |
아무 문자를 사용하지 않으면 all로 추정 | ||
수행할 명령 (연산) | + | 추가 |
- | 제거 | |
= | 지정, 기존의 속성 값은 사라짐 | |
설정할 퍼미션 (접근 권한) | r | 읽기 |
w | 쓰기 | |
x | 실행 |
- 사용 예시
표기법 | 의 미 |
u+x | 소유자에게 실행 권한을 추가 |
u-x | 소유자의 실행 권한 제거 |
+x | 모든 사용자(소유자, 그룹, 기타사용자)에게 실행 권한 추가 |
o-rw | 기타사용자의 읽기, 쓰기 권한 제거 |
go=rw | 그룹, 기타사용자에게 읽기, 쓰기 권한 지정, 이전에 실행 권한을 가지고 있다면 제거됨 |
u+x,go=rw | 소유자에게 실행권한을 추가하고 그룹, 기타 사용자에게 읽기, 쓰기 권한 지정 |
a=rw | 모든 사용자에게 읽기, 쓰기 권한 지정 |
g-w | 그룹 소유자의 쓰기 권한 제거 |
g+w,o-x | 그룹 소유자에게 쓰기 권한 추가, 기타 사용자의 쓰기 권한을 제거 |
3. 접근 권한을 8진수로 표현
- 원하는 파일의 접근 권한을 설정하기 위해 8진수 표기법을 사용
- 3자리의 8진수로 소유자, 그룹 소유자, 기타 사용자를 위한 파일 모드를 설정할 수 있음
- r(읽기, 4), w(쓰기, 2), x(실행, 1)
- 2진법과 8진법의 파일 모드
8진법 | 2진법 | 파일 모드 |
0 | 000 | --- |
1 | 001 | --x |
2 | 010 | -w- |
3 | 011 | -wx |
4 | 100 | r-- |
5 | 101 | r-x |
6 | 110 | rw- |
7 | 111 | rwx |
4. chmod 사용 예시
소유권 또는 그룹 변경(chown / chgrp)
- 파일이나 디렉토리의 소유주나 그룹을 변경할 때 사용
- 명령을 실행하고 나면 파일에 대한 이전 소유주는 해당 파일에 이 명령을 다시 실행할 수 없음
- 명령어를 사용하기 위해서는 슈퍼유저 권한이 필요함(보안의 특성상 슈퍼유저만 사용)
1. 파일 소유자와 그룹 변경(chown)
1) chown 명령어 도움말
- 주요 옵션
옵 션 | 설 명 |
-h | 심볼릭 링크 파일 자체의 소유주나 그룹을 변경 |
-R | 하위 디렉토리와 디렉토리 하위의 모든 파일의 소유주를 변경 |
2) chown 명령어 사용 예시
2. 그룹 소유권 변경(chgrp)
- UNIX의 이전 버전에서는 chown 명령어가 그룹 소유권이 아닌 파일 소유권만 변경할 수 있었음
- chgrp 명령어: 그룹 소유권을 변경하기 위한 독립된 명령어
1) chgrp 명령어 도움말
- 주요 옵션
옵 션 | 설 명 |
-h | 심볼릭 링크 파일 자체의 그룹 소유권 변경 |
-R | 하위 디렉토리와 디렉토리 하위의 모든 파일의 그룹 소유권 변경 |
2) chgrp 명령어 사용 예시
접근 권한 마스크(umask)
- chmod 명령: 기존 파일의 접근 권한을 변경할 때 사용, 8진수로 지정하는 접근 권한은 해당 파일이 가져야 할 권한을 명시함
- umask 명령: 앞으로 만들어질 파일에 영향을 미치는 명령, 명령으로 지정한 8진수는 새로 만들어질 파일에서 제거될 권한을 명시
1. 접근 권한 기본 값(파일과 디렉토리 생성시 접근 권한, 단, umask로 지정한 값은 기본값에서 제거)
- 일반(정규) 파일; 666(rw-rw-rw-) - umask로 지정한 값
- 디렉토리: 777(rwxrwxrwx) - umask로 지정한 값
2. umask 값 설정
- 시스템 관리자는 /etc/profile 파일에 umask를 지정하여 시스템 전체 사용자에게 획일적인 umask값을 적용 가능
- 보통 group과 other의 쓰기권한에 제한을 두는 022를 많이 사용
3. umask 명령어 사용 예시
ref : http://eunguru.tistory.com/93
'서버(Server) > Linux' 카테고리의 다른 글
PS 명령어의 상세설명 (0) | 2018.05.28 |
---|---|
리눅스 디렉토리 구조와 윈도우 (1) | 2018.05.28 |
#!/bin/bash 셸과 각종 명령어들 (0) | 2018.05.21 |
linux 명령어: rm - 파일 혹은 디렉토리 삭제 (0) | 2018.05.14 |
Linux – sudo와 su의 차이 (0) | 2018.05.14 |