• 맑음동두천 19.7℃
  • 맑음강릉 17.9℃
  • 맑음서울 19.2℃
  • 맑음대전 20.1℃
  • 맑음대구 19.5℃
  • 맑음울산 17.0℃
  • 맑음광주 18.6℃
  • 맑음부산 15.3℃
  • 맑음고창 17.9℃
  • 맑음제주 16.9℃
  • 맑음강화 17.1℃
  • 맑음보은 18.4℃
  • 맑음금산 18.9℃
  • 맑음강진군 19.0℃
  • 맑음경주시 20.1℃
  • 맑음거제 16.6℃
기상청 제공

리눅스 명령어 : 루트도 지우지 못하는 파일 설정하기 chattr, lsattr

chattr, lsattr

루트도 지우지 못하는 파일을 설정한다.

chattr [옵션] [+=-속성] [파일명]

[옵션]
-V: 파일속성을 바꾼 다음에 보여줌
-R: 하위 디렉토리까지 재귀적으로 바꿈

[속성]
a: 파일을 추가모드로만 열수 있다. 단, vi편집기로는 내용을 추가 할 수 없다.
c: 압축되어 있는 상태로 저장함
d: dump명령을 통하여 백업받을 경우 백업받지 않음.
i : 파일을 read-olny로만 열 수 있게 설정한다. 링크도 허용하지 않고 루트만이 이 속성를 제거할 수 있다.


속성를 추가 할때는 "+속성"
속성를 제거할 때는 "-속성"

"=속성"를 사용할 경우 현재의 속성는 제거되고 오직 "=속성"로 설정된 속성만 적용된다.

* lsattr 이라는 명령으로 파일의 chattr 속성를 확인할 수 있다.

----------------------------------------------------------------------
예) file1에 i 속성를 추가할 때
chattr +i file1

예) 파일의 chattr 속성 확인
[root@ezvil log]# lsattr messages
-----a------- messages

예) a 속성이 설정된 file2 에 내용을 추가할 때
[root@ezvil log]# cat >> file2

예) i, 또는 a 속성가 설정된 파일에 속성를 제거할 때는 '-속성' 를 이용한다.
[root@ezvil log]# chattr -i file1
----------------------------------------------------------------------

<chattr>을 이용하면 파일의 소유자라도 read-only로만 파일을 열수 있게 할수 있고..
root도 chattr로 설정한 것을 해제하지 않으면 절대 chattr +i 로 설정한 파일을 지울 수 없다.
(단, root만 사용 가능하다.)

간혹 짖궂은 해커는 멍청한 관리자를 위해(?) 해킹한 시스템의 특정 파일에 chattr +i 를 설정해 놓고..
chattr 명령을 모르는 관리자가 파일을 수정할려고 끙끙 대는 모습을 즐기기도 한다.

.bash_profile / .bashrc 같은 파일에 chattr +i 를 설정해서 default 설정을 변경하지 못하도록 사용하기도 한다.