[Linux] 허가권(Permission)

cosmos-JJ·2023년 9월 21일
0

Linux

목록 보기
3/4
post-thumbnail

리눅스는 여러 사용자가 이용하는 경우가 많이 때문에 한 사용자의 파일을 다른 사용자가 읽고 쓸 수 없도록 제어해야 할 필요가 있다.

또한 셸에서의 파일 실행 가능 여부 등 속성을 각각 설정 가능하다.

허가권(Permission)

  • ls -la로 확인 가능

1- 2rwx 3rwx 4rwx :


파일 허가권 구분

1 ➡ type
2 ➡ user
3 ➡ group
4 ➡ other


허가권 기능

r ➡ 읽기 (read)
w ➡ 쓰기 (write)
x ➡ 실행 (execute)


8진법 표현

1 ➡ --x
2 ➡ -w-
3 ➡ -wx
4 ➡ r--
5 ➡ r-x
6 ➡ rw-
7 ➡ rwx


파일 외에 디렉터리에도 허가권이 있다.
디렉터리의 허가권도 마찬가지로

r : 해당 디렉터리를 읽는 권한
w : 디렉터리 내에 파일을 생성,삭제 권한
x : 디렉터리 내의 파일에 대한 접근 허가

x가 없으면 ls 로 해당 디렉터리에 접근할 수 없는 경우도 발생한다.


파일 타입

- ➡ 일반 파일
b ➡ Block device 파일
c ➡ Character device 파일
d ➡ dir
l ➡ 심볼릭 링크
p ➡ FIFO (named pipe)
s ➡ 소켓
? ➡ 기타 파일 타입


파일 타입 특수 기호
s ➡ suid 와 sgid의 실행 권한 있음
S ➡ suid 또는 sgid로 설정되어 있으나, 실행 권한은 없음
t ➡ sticky bit가 설정되어 있으며, 타 사용자(other)의 실행 권한 있음
T ➡ sticky bit가 설정되어 있으나, 타 사용자는 실행 권한 없음
x ➡ 실행 권한이 있으며, 위 중 어느 것에도 해당하지 않음
- ➡ 위 중 어느 것에도 해당하지 않음


생성시 기본 설정 허가권

  • 디렉토리 : rwx r-x r-x
  • 파일 : rw- r-- r--

chmod 명령어를 통한 권한 부여

문자열 모드

$ chmod [레퍼런스] [연산자] [모드] [대상이름]

<레퍼런스>

  • u : user
  • g : group
  • o : other
  • a : all == ugo

<연산자>

  • + : 해당 권한 추가
  • - : 해당 권한 제거
  • = : 해당 권한을 지정한 권한으로

<모드>

  • r : read
  • w : write
  • x : execute

ex) chmod g-w test.c

8진법 모드

$ chmod [옵션] [8진법] [대상이름]

ex) chmod 777 test.c


참고

profile
🤍도전하는 건 즐거워요🤍

0개의 댓글