본문 바로가기
  • 시 쓰는 개발자
CS 개념/LINUX

Linux Permission

by poetDeveloper 2024. 4. 5.

Linux Permission

퍼미션이란, 파일이나 디렉토리의 접근 권한을 사용자마다 다르게 설정하여 보호하는 개념이다.

 

파일 권한 확인하기

ls -al

 

맨 왼쪽에 rwx~~ 부분이 파일의 mode이다. 맨앞에 알파벳을 보면, d로 시작하는게 2개가 있고 -로 시작하는게 2개가 있다. 그리고 맨 오른쪽을 보면 위 2개는 .와 ..이라고 되어있는데 이것은 디렉토리를 의미하며, 밑에 2개는 파일명을 의미한다. 즉, d는 디렉토리이고 -는 파일이다.

  • d : directory
  • - : file
  • r : read
  • w : write
  • x : execute
  • kwanghwi, root : 파일 소유자 명을 의미한다. 왼쪽은 Owner, 오른쪽은 Group이다.
  • 4096, 1277936 등 : 파일 사이즈 (바이트)
  • Apr 3 : 마지막으로 수정한 날짜
  • bash, zsh 등 : 파일/디렉토리 이름

위에서 알 수 있듯, 파일모드는 4가지 섹션으로 나뉜다.

[파일/디렉토리][Owner 권한] [Group 권한] [Other 권한]

  1. 맨앞에 d와 -로 디렉토리인지 파일인지 구분한다.
  2. 그 다음 알파벳 3개가 Owner (파일 소유자)
  3. 그 다음 3개가 Group (여러 유저가 포함될 수 있고, 그룹에 속한 모든 사용자는 같은 권한을 가짐.)
  4. 그 다음 3개가 Other(오너도 그룹도 아닌 나머지 사용자) 

 

파일 권한 변경하기

chmod 권한설정 파일명

 

파일의 권한을 변경하기 위해서는, 오너, 그룹, Other 3개를 모두 체크해줘야한다. 만약 chmod 750 testFile 라고 하면 오너가 7, 그룹이 5, Other가 0을 의미하게 되고 각 숫자가 의미하는 바는 아래 사진과 같다.

 

만약 사용자에게 -rw-r--r-- 로 설정한다면 어떻게 될까?

  • Owner에게 read & write (4+2)
  • Group에게 read (4)
  • Other에게 read만 설정하는 것이다. (4)

이를 적용하려면 r은 4, w는 2, x는 1이기 때문에 이를 조합하여 chmod 644 testFile로 쓰면 된다. 만약 파일이 아니라 디렉토리라면 실행권한이 있어야 디렉토리에 들어갈 수 있다는 것을 참고하자.

 

파일 소유자 변경하기

chown 소유자:그룹 파일명

 

파일의 소유자를 변경하는 명령어이다. 기본적으로 파일을 만든 사람이 소유자로 지정되고, chown을 이용해 Owner와 Group을 바꿀 수 있다.

 

+ 추가) 그룹 설정 안할거면 그냥 chown root req 가능.

+ 추가) 현재 루트 권한으로 이미 로그인 된 상태라서 sudo 를 안붙인 것이지, 기본적으로는 sudo chown root filename 이라고 생각하면 된다.

'CS 개념 > LINUX' 카테고리의 다른 글

리눅스로 *.c파일 컴파일하기  (0) 2023.11.26
LINUX란 ?  (0) 2023.11.15