리눅스 파일 권한 - chmod, chown, chgrp

Melim·2023년 7월 19일

linux

목록 보기
1/1

배경

개발 도중 Permission denied 오류를 너무 많이 겪어서 이 기회에 리눅스 파일 권한에 대해 정리해보면 좋을 것 같아서 글을 적게 되었다.

파일 권한이란?

  • 잘못된 명령어 사용으로 시스템 운영에 중요한 역할을 하는 파일의 내용이 변경되거나, 사용자의 사소한 실수로 파일이 삭제되는 것을 막기 위한 것.

리눅스 파일 권한 3가지

파일 권한 확인하기

- User 권한: 파일을 만든 사람 (root)

- Group 권한: 파일을 만든 사람이 속한 그룹의 사용자 (www-data)

- Other 권한: 기타 사용자

파일 권한 변경하기 - (chmod + 숫자)

파일이나 디렉터리의 사용 권한 변경

파일 권한 변경은 파일 소유자(생성자)만 가능하다.

# rw-r--r--
$ chmod 644 test.txt

# rwxrwxrwx
$ chmod 777 test.txt

# rwxr-x--
$ chmod 750 test.txt

파일 권한 변경하기 - (chmod + 기호문자)

# 파일에 대하여 사용자(u)에 읽기 및 쓰기(rw)권한으로 초기화(=)
$ chmod u=rw test.txt

# 파일에 모두(a)에게 읽기,쓰기(rw) 권한으로 초기화(=)
$ chmod a=rw test.txt

# test.txt 의 소유자(u)에게 읽기(r) , 쓰기(w) 권한을 추가 부여(+)
$ chmod u+rw test.txt

# test.txt 의 소유그룹(g)에게 쓰기(w) 권한을 제거(-)
$ chmod g-w test.txt

# 그외 계정에게 모든 권한을 제거(-)
# rwx의 순서는 변경하여도 무방하다. o-rwx = o-wxr
$ chmod o-wxr test.txt

파일 사용자 및 그룹 소유권 변경하기 - (chown)

파일이나 디렉터리의 사용자 및 그룹의 소유권을 변경

소유권 변경은 오직 루트 사용자만 가능하다.

# test.txt 파일의 소유자를 root로
$ chown root test.txt

# 소유그룹을 mygroup으로 변경
$ chown :mygroup test.txt

# 소유자는 myuser 소유그룹은 mygroup으로 파일 소유자 변경
$ chown myuser:mygroup test.txt

# myfiles 디렉터리 이하 모든 파일 및 디렉터리에 대하여 소유자는 myuser, 소유그룹은 mygroup으로 변경
$ chown -R myuser:mygroup myfiles

파일의 그룹 소유권만 변경하기 - (chgrp)

파일이나 디렉터리의 그룹의 소유권만 변경

#  test.txt 파일의 소유그룹을 mygroup로
$ chgrp mygroup test.txt

# 디렉터리 이하 모든 파일과 디렉터리에 대해 그룹을 colors로 변경 
$ chgrp -R colors color_files

0개의 댓글