개발자의 서재
[Linux] 리눅스 파일과 폴더의 권한 (Permission) 본문
윈도우 유저라면 처음 보면 헷갈릴 수 있는 리눅스의 권한 체계 (Permission)를 알아보자.
권한의 종류
권한에는 세 가지 종류가 있다.
- 읽기 (read): 파일을 읽을 수 있는 권한
- 쓰기 (write): 파일을 수정하거나, 쓰거나, 지울 수 있는 권한
- 실행하기 (execute): 파일을 실행할 수 있는 권한
권한 보기
파일의 권한을 보려면 아래의 커맨드를 사용하면 된다.
ls -l
혹은 줄여서
ll
myStuff라는 폴더 안에 있는 파일들의 권한을 살펴보자.
cd /usr/fwantastic/myStuff
ls -l
drwxrwxrwx 1 user1 user2 4096 Jul 11 11:11 file1.txt
-rw-rw-r-- 1 user1 user2 76141 Jul 13 15:56 file2.txt
-rw-r--r-- 1 user1 user2 122769 Jul 14 10:55 file3.txt
권한 구성
권한은 총 10개의 문자로 구성되어 있고 네 개의 그룹으로 나뉜다.
1번째 문자
- : 파일이란 표시
d : 폴더/디렉토리라는 표시
l : 링크라는 표시
2-4번째 문자
파일 주인의 읽기, 쓰기, 실행하기 권한
5-7번째 문자
파일 주인이 속한 그룹의 읽기, 쓰기, 실행하기 권한
8-10번째 문자
그 외 유저들의 읽기, 쓰기, 실행하기 권한
예제
-rwxrw-r-- 를 예로 들어보자.
1번째 문자 - 로 파일이란 것을 알 수 있고,
2-4번째 문자 rwx 로 파일 주인이 읽기, 쓰기, 실행하기가 전부 가능한 것을 알 수 있고,
5-7번째 문자 rw- 로 파일 주인이 속한 그룹이 읽기와 쓰기가 가능한 것을 알 수 있고,
8-10번째 문자 r-- 로 파일 주인과 그룹 외에 사용자는 읽기만이 가능한 것을 알 수 있다.
한번 이해하면 쉬운 원리를 가지고 있다.
권한 변경
권한 변경은 chmod 커맨드를 사용한다. chmod는 change mode의 약자이다.
사용 방법
chmod [변경하고자 하는 권한 값] [파일 혹은 디렉토리]
권한 고유 값
권한마다 부여된 고유 숫자가 있다.
- r = 4
- w = 2
- x = 1
chmod 커맨드는 총 세 개의 숫자를 지정해줘야 하는데 하나의 숫자가 하나의 그룹을 대표한다. 이 그룹은 위의 권한 구성 섹션의 2-4번째 문자, 5-7번째 문자, 8-10번째 문자 를 뜻한다. 각 숫자는 r, w, x를 전부 더한 값이다.
예로 모든 그룹에 모든 권한을 부여하고 싶다면 r, w, x의 합인 7을 세 번 쓰면 된다.
예제 1 - file1.txt를 아무나 읽기/수정하기/실행하기가 가능하게 변경하기
chmod 777 /xxx/yyy/file1.txt
예제 2 - file1.txt를 파일 주인만 모든 권한을 가지고 나머지는 읽기 권한만 주기
chmod 744 /xxx/yyy/file1.txt
출처:https://www.fwantastic.com/2019/12/linux-permission.html
'Linux' 카테고리의 다른 글
[Linux]자주 쓰는 명령어 정리 (0) | 2022.03.05 |
---|