본문 바로가기
Engineering/OS -Linux, Windows, EXSi

[chattr] 파일 속성 제어하기 (파일 삭제 불가하도록 file lock)

by 알탱2 2024. 1. 8.
반응형

파일 삭제 동작에 대한 검증을 하다보면 file I/O에 문제가 발생하는 상황에서 Exception 처리가 잘 되었는지를 확인하는 경우가 있다. 이런 경우 chattr +i 파일명 command를 사용하여 파일을 삭제하지 못하도록 설정한 후 Exception 처리를 확인하였다.

chattr command를 사용해본 경험이 적다보니 익숙해지지 않아(거의 TestCase에서 Copy&Paste로 사용하고 있음) 좀 더 검색을 해보았다.

 

chattr

파일의 속성을 제어할 수 있는 linux command

ch(change) + attr(attribute) 로 기억하면 되고, 속성을 확인하기 위해서는 lsattr 명령어를 사용할 수 있다.

linux man page : https://linux.die.net/man/1/chattr

 

(1) 파일 삭제(+변경) 못하도록 i(Immutable) 속성 부여

# 파일 삭제 금지 속성 부여
chattr +i 파일명

# 파일 삭제 금지 속성 해제
chattr -i 파일명

 

 

(2) 파일 삭제 못하도록 i 속성을 특정 폴더와 폴더 하위 모든 파일에 부여

# 파일 삭제 금지 속성 폴더 전체에 부여
chattr +i -R 폴더명

# 파일 삭제 금지 속성 폴더 전체에 해제
chattr -i -R 폴더명

 

 

 


 

파일 삭제 금지 속성 i 외에도 아래와 같이 다양한 속성을 부여할 수 있다는데, 몇 가지 궁금한 속성에 대해서는 다음에 추가로 해봐야겠다..

append only (a), compressed (c), no dump (d), extent format (e), immutable (i), data journalling (j), secure deletion (s), no tail-merging (t), undeletable (u), no atime updates (A), synchronous directory updates (D), synchronous updates (S), and top of directory hierarchy (T)

반응형

댓글