권한의 이해와 설정 방법

prana·2022년 12월 9일
0

Linux

목록 보기
5/28

출처 : 유튜브 따라하면서 배우는 it - 리눅스 기초

권한 - 파일 및 디렉토리에 접근을 제어

  • 리눅스의 모든 파일과 디렉토리는 권한(퍼미션)을 가지고 있다.

  • 리눅스의 파일시스템 상에 권한에 대한 정보를 저장하는 부분이 있다.

  • 퍼미션들은 시스템 상에 존재하는 파일들에 대한 읽기, 쓰기, 실행에 대한 접근 여부를 결정

  • ls -l 명령어로 확인 가능 (첫번째 필드, -rwxr-wr--)

  • 이러한 퍼미션은 다중 사용자(동시에 여러 사용자) 환경을 제공하는 리눅스 환경에서는 가장 기초적인 접근 통제 방법이다.


drwxr-xr--. 3 root(소유자) root(그룹) 18 9월28 22:07 .config(디렉토리임)

  • 총 10개의 문자, 첫 번째 문자는 해당 파일의 종류
  • 두 번째 ~ 열 번째 문자는 권한
  • 읽기, 쓰기, 실행으로 나눠볼 수 있다.
rw-r-xr--
소유자 권한관리그룹 권한나머지 권한
  • 소유자 : 일반적으로 파일이나 디렉토리를 생성한 사용자, 명령어로 변경 가능
  • 관리 그룹 : 파일이나 디렉토리를 생성한 사용자가 속한 그룹, 명령어로 변경 가능
    • 일반적으로 사용자 이름 그대로 그룹이 똑같이 만들어진다.
  • 나머지 : 소유자도 아니고 관리 그룹에 속한 사용자도 아닌 경우

root라는 그룹에 속해있는 root라는 사용자가 생성한 디렉토리(파일)이라는 것.

  • r: 읽기 권한이 있음
  • w : 쓰기 권한이 있음
  • x : 실행 권한이 있음
  • - : 권한이 없음

권한 설정 방법 - chmod

  • 권한을 설정할 때에는 권한이 있어야 한다.
  • root 사용자는 예외. 얼마든지 접근 가능, 실행 가능하다. (원활한 수업을 위해 root로 수업 진행)

chmod [권한][파일 또는 디렉토리 이름]

  • [권한] : 권한을 입력할 때는 심볼릭 모드옥텟(8진수) 모드 2가지 방식을 이용하여 입력 가능하다.
  • [파일 또는 디렉토리 이름]: 파일, 디렉토리를 지정할 때는 절대 경로 또는 상대 경로 모두 가능하다.

🕺간단한 문자로 설정하는 심볼릭 모드

대상권한권한 부여 여부
소유자, u읽기, r권한 부여, +
관리 그룹, g쓰기, w권한 회수, -
나머지 사용자, o실행, x
  • 모든 소유자에게는 a

  • ex) 소유자에게 쓰기 권한을 준다
    chmod u+w file

  • ex) 소유자에게 읽기 권한을 주고 싶다 → u+r


💃 0~7까지의 숫자를 이용하는 옥텟(8진수) 모드

-----x-w--wxr--r-xrw-rwx
01234567
  • r: 4, 읽기 권한이 있음
  • w: 2, 쓰기 권한이 있음
  • x : 1, 실행 권한이 있음

권한 설정 방법 - umask

  • 파일 또는 디렉토리를 생성할 때 권한 값을 결정하는 umask
  • umask 022 로 설정되어 있음. (리눅스 설치 시 기본적으로)
기본 권한(8진수)기본 권한(문자)
파일644rw-r--r--
디렉토리755rwxr-xr-x
  • 파일이나 디렉토리를 생성할 때 기본적으로 권한 값은 파일의 경우 644 디렉토리의 경우 755로 설정된다.

  • dir 777에서 022를 빼면 755, file 666에서 umask 022를 빼면 644가 나온다.

  • 이 값은 umask 값에 의해서 결정되는 값으로 파일은 666에서 umask 값을 not 연산을 수행 후 둘을 and 연산, 디렉토리는 777에서 같은 방식으로 구해진다.

  • umask 값은 umask 명령어를 이용해서 변경 가능하며 재부팅하면 초기화된다.

  • 재부팅 후에도 적용을 시키려면 사용자 초기화 파일에 설정해야 한다.


권한 관련 파일 및 디렉토리 명령어

권한에 따라 영향을 받는 파일 및 디렉토리 명령어

명령어파일디렉토리
읽기more, cat, head, tail, grepls
쓰기vi 편집기로 내용 수정touch, mkdir, mv, cp, rm
실행파일 이름cd

0개의 댓글