본문 바로가기
OS/Cent OS

속성

by 티옌.liy 2017. 1. 21.

속성 ( Attrubution )

- 특정 파일이나 디렉토리에 속성을 설정.

- 권한과는 다른 개념으로 파일을 관리할 수 있다.


형식 : chattr [ 옵션 ] [ 기호+속성 ] [ 파일 / 디렉토리 명 ]


ex)

chattr -i file1



명령어 종류


chattr - 파일속성을 변경

lsattr -  파일속성을 확인

▷ 디렉토리 확인시 lsattr -d [ 디렉토리 명 ]


속성의 종류


i 속성 ( Immutable )    - 내용이 변경되서는 안되는 매우 중요한 파일에 적합한 속성

- 파일의 내용변경, 삭제, 이름바꾸기, 파일추가, 링크파일 생성 모두 불가능하게 한다.


a 속성 ( Append Only )    - 실시간으로 정보가 쌓이는 파일에 적합한 속성

- 파일의 기존 내용에서 추가만 가능하다.

- i 속성과 같은 기능을 가지고 있다.


e 속성

- ext4 포맷을 ext3 포맷으로 변형



기호


+        지정한 속성을 추가

-         지정한 속성을 제거

=        기존 속성 초기화후 지정한 속성만 부여



옵션


-R : 디렉토리와 파일의 속성 값 출력

-a :  ' . '  으로 시작하는 파일을 포함한 디렉토리 내의 모든 파일 출력

-d : 디렉토리를 볼때, 일반파일처럼 출력

-v : 파일버전 출력





ACL ( Access Control List / 접근 제어 목록 )

- 디렉토리 및 파일에 특정 사용자/그룹에 ACL이라는 권한을 부여하는 기능.



명령어


getfacl - 파일과 디렉토리에서 ACL설정 확인

형식 : getfacl [ 옵션 ] [ 파일/디렉토리 명 ]

옵션

-d : 기본 정보 확인

-R : 하위 디렉토리 및 파일 내용 확인


setgacl - 파일과 디렉토리에 ACL 설정

형식 : setfacl [ 옵션 ] [ 규칙 ] [ 파일/디렉토리 명 ] 

옵션

-m ( modify ) : 권한 수정

-x : 권한 삭제

-R : 하위 디렉토리 및 파일 권한 변경

-b : 권한 및 mask 등, 지정한 권한을 모두 제거


규칙

[ u|User ]:[ Uid|Isername ]:[ rwx|7 ] - 사용자에 대한 ACL설정

[ g|Group ]:[ GID:Groupname ]:[ rwx|7 ] - 그룹에 대한 ACL설정

[ o|Other ]:[ rwx|7 ] - 다른 사용자에 대한 ACL설정


Ex]

기호모드 : # setfacl -m user:I-user1:rwx S-lv01

숫자모드 : # setfacl -m u:I-user1:7 S-lv01



[ 실습 ]




root ] # setfacl -m u:S-user1:7 S-lv01

S-user1] # cd /practice/test

S-user1] # ll



. 이 +로 변경되면서 ACL설정이 됬음을 보여준다.




Default ACL

- 디렉토리는 디폴트 ACL을 설정할 수 있다.

- 해당 디렉토리 내에서 생성되는 파일이나 하위 디렉토리의 기본 ACL가 된다.



해당 디렉토리내에 생성되는 디렉토리에 대해서 rwx rwx rwx 허가권 설정


기호모드 : # setfacl -m default:user::rwx,default:group::rwx,default:other:rwx S-lv03

숫자모드 : # setfacl -m d:u::7,d:g::7,d:o:7 S-lv03



[ 실습 ]


root ] # setfacl -m d:u::7,d:g::7,d:o:7 S-lv03

root ] # getfacl S-lv03


위와같은 S-lv03의 ACL 설정값이 나온다.


root ] # cd S-lv03                    // S-lv03으로 가서

root ] # mkdir test_dir1            // 파일 생성

root ] # getfcal test_dir1           // 파일 ACL값 확인



새로 만든 test에게 setfacl로 따로 ACL를 설정하지 않았지만,

S_lv03에 설정해 놓으니 S-lv03에서 만들어지는 파일이나 디렉토리도 위와같이

저절로 설정되서 생성된다.




ACL MASK - 추가되는 허가권을 제어하는 값


ACL 마스크를 r--로 설정하면, 일치하는 모든 ACL는 자신이 갖고 있는 허가권 ( r  ) 이 효력을 잃어 r--로 변경된다.


# setfacl -m mask:r-- S-lv01

# getfacl S-lv01





[  실습  ]


root ] # setfacl -m mask:--x S-lv01


( mask 값이 --x 이다. )


root ] # su I-user1

I-user1 ] # cd /practice/test


I-user1 ] # cd S-lv01            // 가능  ( 유효한 권한 --x )

I-user1 ] # touch                // 불가능  ( 기본에 rwx 권한이 있지만 마스크 값으로 인해서. )

I-user1 ] # ls                      // 불가능 ( x 권한만 적용되서 rw 권한은 유요하지 않음. )


( 접근은 되지만 읽기, 쓰기는 되지 않는다. )


















'OS > Cent OS' 카테고리의 다른 글

[Cent OS] 파일 시스템 관리  (0) 2017.01.24
프로세스 #2  (0) 2017.01.23
프로세스  (0) 2017.01.22
실습] 계정, 그룹 생성  (0) 2017.01.20
디렉토리와 파일의 허가권  (0) 2017.01.19
디렉토리와 파일의 권한, 소유권  (0) 2017.01.18

댓글