Ownership and Permission

김재현·2023년 8월 8일
0

Linux

목록 보기
5/12
post-thumbnail

Ownership and Permission

리눅스는 파일과 디렉터리에 대한 소유권(Ownership)과 권한(Permission) 시스템을 사용하여 파일 및 디렉터리에 대한 접근을 제어한다.

소유권(Ownership)

파일과 디렉터리는 소유자(Owner)와 소유 그룹(Group)으로 지정된다.

  1. 소유자
    파일과 디렉터리를 생성한 사용자를 나타낸다.
    파일과 디렉터리에 대한 수정, 읽기 및 실행 권한을 가진다.

  2. 소유 그룹
    여러 사용자를 그룹으로 묶어 소유 그룹을 형성할 수 있다.
    파일과 디렉터리에 대한 일부 권한을 공유하는 사용자의 그룹이다.

권한(Permission)

파일과 디렉터리에 대한 접근 권한은 소유자, 소유 그룹 및 기타 사용자에 대해 정의된다.
권한은 주요 3가지 카테고리로 나뉜다.

  1. 읽기 권한(Read)
    파일 내용을 읽거나 디렉터리 내용을 나열할 수 있는 권한이다.

  2. 쓰기 권한(Write)
    파일 내용을 변경하거나 디렉터리 내용을 변경할 수 있는 권한이다.
    파일을 생성, 수정 및 삭제가 가능하다.

  3. 실행 권한(Execute)
    파일이나 디렉터리를 실행할 수 있는 권한이다.
    파일에 실행 권한이 있으면 해당 파일을 실행할 수 있고,
    디렉터리에 실행 권한이 있으면 해당 디렉터리로 이동이 가능하다.

소유자 및 권한 설정

  • 소유자
    # chown brook test-file.txt
    testfile.txt 파일의 소유자를 brook 으로 변경한다.

  • 소유 그룹
    # chgrp devops test-file.txt
    testfile.txt 파일의 소유 그룹을 devops 로 변경한다.

  • 소유자 및 소유 그룹
    # chown pattie:designer -R test-directory
    test-directory 및 하위 데이터(-R 옵션)의 소유자, 소유 그룹을 pattie, designer 로 변경한다.

  • 권한 - 문자를 이용하는 방법
    # chmod u+rwx,g+r,o-rwx security-file
    security-file 의 권한을 다음과 같이 변경한다.
    유저: read, write, execute
    그룹: read
    그 외: 없음

  • 권한 - 숫자를 이용하는 방법
    2진수를 활용하여 권한을 변경할 수 있다.
    4: read
    2: write
    1: execute
    # chmod 764 security-file
    security-file 의 권한을 다음과 같이 변경한다.
    유저: read, write, execute
    그룹: read, write
    그 외: read

특수 권한

리눅스는 3가지 권한 비트를 사용하여 파일과 디렉터리의 동작을 제어할 수 있다.

  1. SUID(Set User ID)
    해당 파일을 실행하는 동안 프로세스의 권한이 파일의 소유자 권한으로 변경된다.
    파일을 실행하는 사용자가 파일의 소유자가 아니더라도 소유자의 권한으로 파일을 실행한다.
    주로 시스템 명령어나 실행 파일에 사용되며, 일반 사용자가 특정 권한을 필요로 할 때 사용된다.
# chmod u+s file 
# ls -l 
-rwsr-xr-x 1 owner usergroup  12345 Aug  8 10:00 file
  1. SGID(Set Group ID)
    해당 파일을 실행하는 동안 프로세스의 그룹 권한이 파일의 소유 그룹의 권한으로 변경된다.
    여러 사용자가 동일한 그룹에 속할 때 그룹 내에서의 파일 공유 및 접근을 편리하게 만들어 준다.
    일반적으로 공유 디렉터리에서 유용하게 사용된다.
# chmod g+s file 
# ls -l
-rwxr-sr-x 1 owner usergroup  12345 Aug  8 10:00 file
  1. Sticky Bit
    해당 디렉터리 내의 파일은 오직 파일의 소유자만이 삭제할 수 있다.
    다른 사용자나 그룹은 해당 파일을 삭제할 수 없다.
    주로 공유 디렉터리에서 여러 사용자가 파일을 업로드하거나 공유할 때 사용되며, 보안 및 데이터 보호를 위해 사용된다.
# chmod +t file
# ls -l
drwxrwxrwt 1 owner usergroup  12345 Aug  8 10:00 file
profile
Linux/Cluster/Infra Engineer

0개의 댓글

관련 채용 정보