ChMod 이해하기

맨날 쓰면서 맨날 찾아봐서 이번 기회에 정리하고 외워둘겸 공유합니다. 

 

chmod는 Unix 및 Unix 계열 운영체제(Linux, macOS, BSD 등)에서 파일 및 디렉토리의 접근 권한(퍼미션)을 변경하는 명령어입니다. 시스템에서는 각 파일 및 디렉토리에 대해 읽기(read), 쓰기(write), 실행(execute) 권한을 사용자의 범주별로 할당하는데, chmod를 통해 이러한 권한 설정을 조정할 수 있습니다.

파일 권한의 구조

파일과 디렉토리에 대한 권한은 다음과 같이 3가지 그룹으로 나뉩니다.

  1. 소유자(Owner): 파일을 만든 사용자나 해당 파일의 주인.
  2. 그룹(Group): 파일 소유자가 속한 그룹.
  3. 기타(Others): 위 두 범주에 속하지 않는 나머지 모든 사용자.

각 범주별로 읽기(read - r), 쓰기(write - w), 실행(execute - x) 권한을 가질 수 있습니다.
이를 간략히 표현하면 다음과 같습니다.

  • r (read): 읽기 권한. 파일 내용을 읽거나 디렉토리 리스트를 확인할 수 있음.
  • w (write): 쓰기 권한. 파일 내용을 변경하거나 디렉토리에 파일을 생성/삭제할 수 있음.
  • x (execute): 실행 권한. 파일을 프로그램으로 실행하거나, 디렉토리에 진입 가능(cd 명령)하게 함.

숫자 표기법(옥타(8진) 표기법)

chmod 명령어는 퍼미션을 숫자로 표현하여 권한을 설정할 수 있습니다. 각 권한 비트를 숫자로 매핑하면:

  • r (read): 4
  • w (write): 2
  • x (execute): 1

따라서 r, w, x 권한의 조합에 따른 숫자는 다음과 같습니다.

  • --- : 0 (어떤 권한도 없음)
  • --x : 1 (실행 권한만)
  • -w- : 2 (쓰기 권한만)
  • -wx : 3 (쓰기+실행 권한)
  • r-- : 4 (읽기 권한만)
  • r-x : 5 (읽기+실행 권한)
  • rw- : 6 (읽기+쓰기 권한)
  • rwx : 7 (읽기+쓰기+실행 권한)

이렇게 권한을 3개의 숫자로 나열하면 OWNER-GROUP-OTHERS 순으로 권한을 표현할 수 있습니다. 예를 들어,

  • chmod 755 file : 소유자에게 rwx(7), 그룹에게 r-x(5), 기타 사용자에게 r-x(5) 권한을 부여.
  • chmod 644 file : 소유자에게 rw-(6), 그룹에게 r--(4), 기타에게 r--(4) 권한을 부여.

 

 

 

'Linux' 카테고리의 다른 글

ZSH 설치해서 꾸미기  (0) 2024.12.12
SSH 로컬 포트 포워딩  (1) 2024.12.10
docker logs 옵션확인하기  (0) 2024.12.03
cent os java 다양한 버전 사용법  (0) 2024.12.03
crontab의 설정한 값 복사하기  (0) 2024.07.02