728x90

chmod : 리눅스 파일 사용 권한

리눅스에서, 파일(File)을 사용해 할 수 있는 작업은 크게 세 가지로 나눌 수 있습니다.

  • 파일에 저장된 데이터를 읽기. (r = read).
  • 파일에 데이터를 쓰기. (w = write).
  • 파일 실행. (x = execute)

그런데 만약 리눅스 시스템의 모든 파일이, 그 종류 또는 쓰임새와 관계없이 읽기, 쓰기, 실행 가능하게 만들어져 있다면 어떻게 될까요? 잘못된 명령어 사용으로 시스템 운영에 중요한 역할을 하는 파일의 내용이 변경되거나, 사용자의 사소한 실수 한번으로 리눅스 시스템의 모든 파일이 삭제되어 버릴 수도 있습니다.

이런 문제가 생기는 경우를 방지하기 위해, 리눅스에서는 각 파일 및 디렉토리에 대해 "읽기(r)", "쓰기(w)", "실행(x)" 권한(permission)을 파일 개별적으로 지정할 수 있도록 만들어 놓았습니다. 그리고 이 세 가지 권한을 "파일을 소유한 사용자(user)", "특정 그룹(group)에 소속된 사용자", "그 외 사용자(others)"에 대해 각각 지정할 수 있게 만들었습니다.

 

chmod 숫자의 의미

chmod 를 표현할 때 숫자로 666 ,777 로 변경하여 사용해본적이 있었는데 의미를 모른채 썼었다.

 

간단하게 말하자면 숫자는 퍼미션의 속성을 표현하는 것이다. 

 

Owner 퍼미션 Group 퍼미션 World 퍼미션
6(rw-) 6(rw-) 6(rw-)

해당 숫자는 8진법으로 표현한 것으로 666의 경우에는 rw-rw-rw-으로 표현 한 것이다.

 

8진법 표현

8진법 2진법 파일모드
0 000 ---
1 001 --x
2 010 -w-
3 011 -wx
4 100 r--
5 101 r-x
6 110 rw-
7 111 rwx

 

퍼미션 속성

속성 파일 디렉토리
r 파일 열기와 읽기를 허용한다. 실행 속성이 설정되어 있으면 디렉토리의 내용물을 나열 할 수 있게끔 허용한다.
w 파일 쓰기 또는 잘라내기를 허용 실행 속성이 설정되어 있으면 디렉토리 내의 파일들을 생성, 삭제, 이름 변경이 가능하도록 허용한다.
x 파일이 프로그램으로 처리되고 파일이 실행되도록 허용. 스크립트 언어에서 작성된 프로그램 파일들은 읽기 기능으로 설정되어 있어야만 실행 가능. 디렉토리에 들어올 수 있더록 허용.

 

chmod 기호 표기법 예시

표기법 의미
u+x 소유자에게 실행 권한을 추가
+x 모든 사용자에게 실행 권한을 추가한다.
o-rw 소유자와 그룹 소유자가 아닌 사용자의 읽기, 쓰기 권한을 제거한다.

 

출처: https://vixxcode.tistory.com/144 [추측보다는 측정:티스토리]

 

 

[linux] chmod 명령어 (source : https://unsplash.com/photos/iar-afB0QQw)

 

728x90

'Programming > Shell & Command' 카테고리의 다른 글

Docker 명령어  (0) 2024.04.24
[Tips] .gitignore template  (0) 2023.08.09
[nslookup] domain ip로 찾기  (0) 2023.03.10
mysql processlist logging  (0) 2023.03.03
[Shell] SSH  (0) 2023.02.22
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기
반응형