강좌
클라우드/리눅스에 관한 강좌입니다.
자격증 분류

리눅스마스터2급강좌 : 파일의 허가권과 파일의 속성

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터2급강좌 : 파일의 허가권과 파일의 속성

 

 

3) 허가권

 

 

상기한 바와 같이, 리눅스의 파일은 파일의 소유자, 그룹 소속자 및 일반 다른 사용자들을 구분하여, 각각에 대해 읽기, 쓰기 및 실행 권한을 부여하는 것이 가능하다.

 

 

 

 

이렇게 파일에 대한 권한을 부여 받으면 부여받은 권한에 따라 파일에 대한 접근이 가능하다.

 

보다 정확한 설명을 위하여 아래와 같이 “ls l” 명령의 결과를 보자.

 

 

 

 

 

 

[root@SUK121 ~]# ls -l

합계 76

-rw------- 1 root root 3275 425 01:38 anaconda-ks.cfg

drwxr-xr-x 7 root root 4096 425 01:32 bin

drwxr-xr-x 2 root root 4096 425 01:32 conf

-rw-r--r-- 1 root root 30955 425 01:38 install.log

-rw-r--r-- 1 root root 5303 425 01:36 install.log.syslog

drwxr-xr-x 2 root 399 4096 920 01:31 test

-rw-r--r-- 1 root root 15 920 12:32 test1

[root@SUK121 ~]#

 

 

 

 

 

 

위의 예에서 각 행들의 첫 번째 부분에 퍼미션(???? -rw-r-xr-x)이 설정되어 있는 것을 볼 수 있다.

 

 

 

 

위의 예에서 test1 이라는 파일의 정보는 다음과 같다.

 

 

 

 

 

 

-rw-r--r-- 1 root root 15 920 12:32 test1

 

 

 

 

 

파일 퍼미션 : -rw-r-xr-x

파일소유자 : root

파일그룹소유자 : root

파일 크기 : 15 bytes

파일명 : test1

 

 

 

위의 정보에서 퍼미션 부분을 보면 다음과 같다.

 

 

 

 

이 부분은 10비트로 이루어져 있으며, 파일유형, 소유자 권한, 그룹소속자 권한 및 일반다른사용자 권한 부분으로 나눌 수 있다.

 

 

 

-

 

r w -

 

r - x

 

r - x

파일유형

 

소유자 권한

 

그룹소속자 권한

 

일반다른사용자 권한

 

 

 

파일유형 : 이 위치에는 다음과 같은 문자들이 설정될 수 있으며 문자들의 의미는 다음과 같다.

????- : 일반 파일임을 의미함

????b : 블럭 구조의 특수 파일(Block Special File)을 의미함(???? /dev/sda)

????c : 입출력에 사용되는 특수 파일(Character Special File)을 의미함(???? /dev/console)

????d : 디렉토리를 의미하며, 디렉토리도 하나의 특수 파일로 취급함

????l : 심볼릭 링크 파일(Link File)을 의미함

????p : 파이프 파일(Pipe File)을 의미함

????s : 소켓 파일(Socket File)을 의미함

 

 

 

소유자, 그룹소속자 및 일반다른사용자의 권한 : 상기의 표에서와 같이 이들 각각에 대해 접근 권한을 설정할 수 있다.

 

 

 

 

각각의 의미는 다음과 같다.

 

 

????--- : 소유자/그룹소속자/일반다른사용자에게 아무런 권한이 없음(8 진수 표시 : 0, 2 진수표시 : 000)

 

 

????--x : 소유자/그룹소속자/일반다른사용자에게 실행 권한만 있음(8 진수 표시 : 1, 2 진수표시 : 001)

 

 

????-w- : 소유자/그룹소속자/일반다른사용자에게 쓰기 권한만 있음(8 진수 표시 : 2, 2 진수표시 : 010)

 

 

????-wx : 소유자/그룹소속자/일반다른사용자에게 쓰기와 실행 권한만 있음(8 진수 표시 : 3, 2 진수표시 : 011)

 

 

????r-- : 소유자/그룹소속자/일반다른사용자에게 읽기 권한만 있음(8 진수 표시 : 4, 2 진수표시 : 100)

 

 

????r-x : 소유자/그룹소속자/일반다른사용자에게 읽기와 실행 권한만 있음(8 진수 표시 : 5, 2 진수표시 : 101)

 

 

????rw- : 소유자/그룹소속자/일반다른사용자에게 읽기와 쓰기 권한만 있음(8 진수 표시 : 6, 2 진수표시 : 110)

 

 

????rwx : 소유자/그룹소속자/일반다른사용자에게 읽기, 쓰기 및 실행 권한이 있음(8 진수 표시 : 7, 2 진수표시 : 111)

 

 

 

이러한 파일이나 디렉토리에 대한 권한의 설정 및 변경을 위해서는 chmod 명령을 사용한다.

 

 

 

 

그리고 파일에 대한 사용자 및 그룹의 소유권은 chown 명령을 사용하여 설정 및 변경할 수 있다.

 

 

 

 

4) 파일 속성

 

 

파일 속성(attribute)은 파일 자체에 대한 허가를 말한다.

 

 

 

 

따라서 파일 속성은 각각의 사용자가 누구냐에 따라서 허가를 하거나 하지 않는 것을 결정하는 파일의 퍼미션과는 아무 연관이 없다.

 

 

 

 

속성에 대해서는 많은 논란이 있었지만 개발이 진행 중에 있다.

 

 

 

 

속성의 설정 및 변경을 위해서는 chattr 명령어를 사용한다.

 

 

 

 

속성 설정을 위해서는 chmod와 같이 +(부여), -(제거) =(속성 유지)에 속성을 붙이는 형식으로 chattr 명령어를 사용한다(예를 들어 ‘chattr +i 파일명’). 그리고 현재 파일의 속성을 확인하기 위해서는 lsattr 명령(예를 들어 ‘lsattr 파일명을 사용한다(여기서는 이 명령어들에 대한 상세한 설명을 생략한다.

 

 

 

 

상세한 설명은 man 페이지를 참고하기 바란다). 다음에는 대표적인 속성 몇 가지만 설명한다.

 

 

a 속성(append only) : 해당 파일을 추가(append mode)만 할 수 있다.

 

root만 사용 가능하다.

 

d 속성(no dump) : dump 프로그램(명령어)로 백업되지 않는다.

 

 

i 속성(immutable) : 해당 파일의 변경, 삭제, 이름변경뿐만 아니라 파일 추가 및 링크 파일도 만들 수 없게 된다.

 

 

 

 

변경 및 추가가 거의 없는 부팅 관련 파일들에 설정하면 부팅되지 않는 문제로 인한 시스템 장애를 줄일 수 있다.

 

 

 

 

또한 a 속성과 함께 사용하면 유용하다.

 

root만 사용 가능하다.

 

 

A 속성(no atime updates) : access가 발생하더라도 파일 시스템의 파일 정보에 저장되는 atime (atime record)가 갱신되지 않는다.

 

 

D 속성(synchronous directory updates) : 디렉토리에 설정하는 속성으로서 D 속성이 설정된 디렉토리는 동기화시킨다.

 

 

T 속성(top of directory hierarchy) : 디렉토리에 설정하는 속성으로 이 속성이 설정된 디렉토리는 최상위 디렉토리로 인식되어 간주된다.

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,035 명
  • 현재 강좌수 :  35,791 개
  • 현재 접속자 :  178 명