리눅스 분류
파일 권한에서 S는?
작성자 정보
- 박태혁 작성
- 작성일
컨텐츠 정보
- 1,407 조회
- 1 댓글
- 0 추천
- 목록
본문
최선영 님의 글
파일의 권한 속성에서 s는 setuid/setgid잖아요...
그런데 S는 어떤 의미이고, 퍼미션 설정은 숫자로는 어떻게 되나요?
파일속성 설정
- 파일속성 설정
예를 들어, 어떤 파일이 있는데 이 파일은 쓰기가 가능한데 오로지 추가하는 모드로만 열 수 있도록 하고 싶은경우가 있다면 기존의 파일 권한 모드로는 어떻게 할 방법이 없다. 이럴 때 사용하는 것이 파일속성 설정이며 이는 chattr 명령을 사용한다.
|
- chattr [-RV] [-+=AacdisSu] [-v version] files...
|
- -R(Recursive) : 디렉토리와 그 이하 모든 내용의 속성을 회귀적으로 변경한다.
-V(Verbose) : 변화된 속성에 대하여 자세히 출력해 준다.
-v version_number : 파일에 "version_number"에 해당하는 버전을 설정한다. - 심볼릭 모드의 형식은 +-=[Sacdisu] 으로 사용가능하다.
여기서 "+" 연산자는 주어진 속성을 현재 파일의 속성에 추가하며, "-" 연산자는 속성을 제거한다. "=" 연산자는 파일이 갖는 속성을 오로지 주어진 속성만 갖도록 설정하게 된다.
"Sacdisu" 문자들은 각각 다음과 같은 속성을 지닌다.
|
syncronization, 동시적 갱신으로 파일을 열게 한다. |
a | append, 추가만 지원한다. |
c | compress, 압축상태로 저장한다. |
d | dump, 덤프를 하지 않는다. |
i | imutable, 면역상태를 만든다. |
s | safe, 안전한 쓰기를 제공한다. |
u | undelete, 지울 수 없게 한다. |
-
[리눅스 파일시스템의 추가 속성] - "S"는 파일을 동기화 시켜준다. 따라서 여러곳에서 파일을 사용하는 경우에도 해당 파일은 시간의 순서대로 동기화되어 진다. 이것은 sync 마운트 옵션을 사용하는 경우와 같다.
"a"는 해당 파일을 추가하는 모드로만 열 수 있다. 따라서 이 속성이 지정되면 지우거나 변경은 되지 않는다.
"c"는 디스크상에서 압축해서 저장하는 속성이다.
"d"는 dump 명령 수행시 백업되지 않게하는 속성이다.
"i"는 완전히 불변하는 파일을 만든다. 이 파일은 어떠한 경우에도 지울 수도, 이름을 변경할 수도, 심지어 링크도 만들 수 없게 된다. 수퍼유저가 이 속성을 변경하기 전에는 어떤 상태도 만들 수 없게 된다.
"s"는 안전하게 지우는 것으로 일단 지울 때는 모든 블록을 0으로 초기화 시킨뒤에 스기를 시작한다.
"u"는 undelete로, 지운뒤에 사용자가 다시 복구하는 기능이지만 아직 구현되지 않고 있다.
- 이제 몇가지를 확인해 보면,
아래와 같은 내용을 담고 있는 attr 이라는 파일이 있다고 할 때, 이 파일에 append 속성을 추가해보기로 하자. - [bluesky@bluestar bluesky]# ls -lF attr
-rw-r--r-- 1 bluesky bluesky 46 Mar 9 11:15 attr
[bluesky@bluestar bluesky]# cat < attr
S: syncronization...
a: append...
c: compress - 이제 이 파일에 append 속성을 추가하면,
[bluesky@bluestar bluesky]# chattr -V +a attr
chattr 1.14, 9-Jan-1999 for EXT2 FS 0.5b, 95/08/09
Flags of attr set as -----a-- - 이렇게 append 속성을 추가하면 이제부터 이 파일은 "추가모드로만 변경이 되며 지우거나 할 수가 없게 된다".
[bluesky@bluestar bluesky]# cat > attr
bash: attr: Operation not permitted <- 수정이 안된다고 함.
[bluesky@bluestar bluesky]# cat >> attr <- 추가모드(>>)로 작성
d: dump... <- 이 라인을 추가한다. - [bluesky@bluestar bluesky]# cat < attr
S: syncronization...
a: append...
c: compress
d: dump... <- 추가된 라인
- 이번에는 imutable 속성을 추가해보자.
[bluesky@bluestar bluesky]# chattr -V +i attr
chattr 1.14, 9-Jan-1999 for EXT2 FS 0.5b, 95/08/09
Flags of attr set as ----ia-- - [bluesky@bluestar bluesky]# rm attr
rm: remove `attr'? y
rm: cannot unlink `attr': Operation not permitted <- 지울 수가 없다고 한다.
관련자료
-
이전
-
다음
댓글 1
최선영님의 댓글
- 최선영
- 작성일
님, 감사합니다.
근데, 질문의 요지가 그게 아니었습니다.
퍼미션 정보에서 -rwxrwSr-- 처럼 나타나는 'S'의 뜻을 질문하려고 했던 거라서...
근데, 질문의 요지가 그게 아니었습니다.
퍼미션 정보에서 -rwxrwSr-- 처럼 나타나는 'S'의 뜻을 질문하려고 했던 거라서...