chown
- change + owner
- 파일의 소유권과 그룹을 변경하는 명령어
# chown [OPTION] [OWNER][:[GROUP]] [FILE]
# 소유주 변경 (modul dir 안의 파일들의 소유권을 모두 user1에게 줌)
$ chown -R user1 module
# 소유주와 그룹 변경
$ chown -R users:user1 module
chown 명령어 옵션
옵션 | 설명 |
-c (--changes) | 기존에 지정된 모드에서 변경되는 경우에만 출력 |
-f (--slient, --quiet) | 오류 메세지를 출력하지 않음 |
-v (--verbose) | 처리된 모든 파일 및 디렉토리에 대한 메세지를 출력 |
-h (--no-dereference) | 심볼릭링크 파일이 변경됨 |
-R (--recursive) | 지정한 파일 하위까지 변경 |
-H | (-R옵션과 함께 사용) 심볼릭 링크의 참조파일만 변경 |
-L | (-R옵션과 함께 사용) 심볼릭 링크를 제외하고 변경 |
-P | (-R옵션과 함께 사용) 심볼릭링크 자체에서 변경 |
from=CURRENT_OWNER:CURRENT_GROUP | 기존의 소유주로부터 변경할 소유주로 변경 |
chmod
- change + mode
- 파일의 권한을 설정하는 명령어
# chmod [OPTION] [MODE] [FILE]
# 파일이 속한 그룹이 실행할 수 있는 권한 추가
$ chmod g+x FILE
# 시스템의 모든 사용자가 읽을 수만 있는 권한 지정
$ chmod a=r FILE
# 파일을 소유한 그룹과 그 외 사용자의 모든 권한 제거
$ chmod go-rwx FILE
chmod 명령어 옵션
옵션 | 설명 |
-v | 모든 파일에 대해 모드가 적용되는 진단(diagnostic) 메시지 출력 |
-f | 에러 메시지 출력하지 않음 |
-c | 기존 파일 모드가 변경되는 경우만 진단(diagnostic) 메시지 출력 |
-R | 지정한 모드를 파일과 디렉토리에 대해 재귀적으로(recursively) 적용 |
chmod 명령어 모드
MODE | 설명 |
u, g, o, a | 소유자(u), 그룹(g), 그 외 사용자(o), 모든 사용자(a) 지정 |
+, -, = | 현재 모드에 권한 추가(+) 현재 모드에서 권한 제거(-) 현재 모드로 권한 지정(=) |
r, w, x | 읽기 권한(r) 쓰기 권한(w) 실행 권한(x) |
X | "디렉토리" 또는 "실행 권한(x)이 있는 파일"에 실행 권한(x) 적용 |
s | 실행 시 사용자 또는 그룹 ID 지정(s). "setuid", "setgid" |
t | 공유모드에서의 제한된 삭제 플래그를 나타내는 sticky(t) bit |
0~7 | 8진수(octet) 형식 모드 설정 값 |
chgrp
- change + group
- 그룹 변경
- -R 옵션 (디렉토리 안의 파일들의 사용자 그룹도 모두 변경)
# chmod [GROUP] [FILE]
$ chgrp user1 build.sh
user와 group
- 리눅스는 다중 사용자 시스템(Multi-User System)임
- 기본적으로 root라는 super user가 있으며, 모든 작업을 할 수 있는 권한이 있음
- 모든 사용자는 하나 이상의 그룹에 소속되어 있음
- 사용자는 etc/passwd 파일에 정의 되어 있음
- 그룹은 기본적으로 사용자를 생성할 때 함께 생성
- 하나의 user가 여러 group을 갖는 것이 가능함 (3개 이상 가지려면 /etc/group 파일을 직접 수정해야 함)
- group을 이용하여 특정 그룹에만 파일이나 폴더를 열람할 권한을 주는 식으로 이용
'프로그래밍 > Linux' 카테고리의 다른 글
mDNS / DNS-SD 란? Avahi란? (0) | 2024.08.02 |
---|---|
[Linux] 파일 이름, 내용 일괄변경 (0) | 2024.04.03 |
[Linux] grep 정리 (0) | 2024.03.27 |
[Linux] sed(Stream Editor) 정리 (0) | 2024.03.26 |