Linux ETC

- 파일 속성 변경 (chattr / lsattr)

 

파일 속성 변경 방법에 있어서 흔히 알고 있는 chmod를 이용하는 방법 이외에도 chattr를 사용하는 방법이 있습니다.

특정 User 및 Group에게 파일의 읽기(r), 쓰기(w), 실행(x) 권한을 부여할수 있는 chmod와는 달리 기능 자체는 다소

제한적이지만 상황에 따라 유용할 수 있는 명령어입니다.

 

 

1. 옵션
  -R : 디렉토리와 그 이하 모든 내용의 속성을 회귀적으로 변환시킨다.

  -V : 변화된 속성에 대하여 자세히 출력한다.

  -v 버전 : 파일에 버전을 설정한다.

 

2. 속성의 종류

>> 동시적 갱신(S), 추가만 지원(a), 압축상태(c), 면역상태(i), 덤프 안함 (d), 안전한 지움(s), 지울 수 없음 (u).


  'a' 속성을 지닌 파일은 쓰기시에 오로지 추가모드로만 열 수 있다.

  'c' 속성을 지닌 파일은 커널에 의해 디스크 상에 압축 상태로 저장된다.  화일로부터 읽기 작업을 하면 압축이
      풀린 자료가 반환된다. 쓰기 작업은디스크 상에 저장하기 전에 자동으로 압축된다.

  'd' 속성을 지닌 파일은 dump(8) 명령 수행시 백업되지 않는다.

  'i' 속성을 가진 파일은 수정할 수 없다: 지울 수도 이름을 변경할 수도 그리고링크도 가할 수 없으며 어떤 자료도

     써질 수 없다.  오로지 수퍼유저만이 다시 이 속성을 설정하거나 지울 수 있다.


  's' 속성을 가진 파일이 지워질 때는 일단 블럭들이 모두 0 으로 되고 다시디스크상에 씌여진다.

  'S' 속성을 가진 파일이 수정될 때는 그 변화가 디스크 상에 동기화된다.  이것은 마치 ‘sync’ 마운트 옵션을 몇몇

       파일에게 부여한 것과 같다.

  'u' 속성을 가진 파일이 지워지면 그 내용이 저장된다. 사용자는 다시 복구할 수있다.


3. 속성 연산자

  '+' 연산자는 주어진 속성을 현재 파일의 속성에 추가한다. 
  '-' 연산자는 속성을 제거한다. 
  '=' 연산자는 파일이 갖는 속성을 오로지주어진 속성만 갖도록 설정한다.

 

 

예제 1). 속성 부여

 chattr_1.jpg
-> 'i' 속성 부여시, 'rw' 권한을 가지고 있는 root 임에도 삭제가 불가능.

 

예제 2). 속성 제거

chattr_2.jpg
-> chattr로 적용된 속성은 'lsattr' 명령으로 확인 가능하며, '-' 연산자를 사용하여 'chattr -i' 명령을 통해 속성 제거.

 

 

 

번호 제목 글쓴이 날짜 조회 수
106 rsync / 파티션 전체 동기화 방법 호스트웨이 2012.12.14 2429
105 특정 파일이 소속된 rpm 패키지 찾기 호스트웨이 2012.12.14 1781
104 df 와 du의 출력 크기가 다르게 보이는 이유 호스트웨이 2012.12.14 4430
103 nl명령어를 사용해 파일내용 출력시 행번호 붙이기 file 호스트웨이 2012.12.20 3741
102 df 쉽게 보기 호스트웨이 2012.12.20 2835
101 쉘 프롬프트에서 바로 이전 디렉토리로 이동하기 호스트웨이 2012.12.20 2751
100 free -m 에서 free (남는 메모리 양) 최소량 제한하기 호스트웨이 2012.12.21 2147
99 [ERROR] ftp error 500 OOPS: cannot change directory:/home/ 호스트웨이 2012.12.21 4301
98 리눅스 캐시 메모리 비우기 file 호스트웨이 2012.12.26 5269
97 리눅스 free 명령어 호스트웨이 2012.12.26 1819
96 ls -l 출력 시 날짜형태 변경 호스트웨이 2012.12.27 6151
95 리눅스 uniq 명령어 file 호스트웨이 2012.12.27 7878
94 sftp 서비스 막기 호스트웨이 2012.12.27 1320
93 오늘 생성한 파일만 조회하기 호스트웨이 2012.12.27 6249
92 partprobe - 리부팅 없이 사용 중인 파티션 재인식 호스트웨이 2012.12.28 8348
91 samba 설치 file 호스트웨이 2014.04.14 3377
90 리눅스 커널 업데이트 및 커널 변경 부팅 방법 file 호스트웨이 2014.10.30 23426
89 SVN(subversion) 설치 및 셋팅 file 호스트웨이 2014.12.02 6425
88 epel-release 설치하기 file 호스트웨이 2014.12.22 14294
87 ngrinder를 이용한 부하 테스트 - 1) Controller 설치 file 호스트웨이 2015.04.08 4285