문제
project 그룹에 속한 사용자들이 /project 디렉터리에서 파일 생성은 자유로우나 삭제는 본인이 생성한 파일만 가능하도록 설정하려고 한다. /project 디렉터리의 정보가 다음과 같을 때 관련 명령으로 알맞은 것은?
① chmod g+s /project ② chmod g+t /project ③ chmod o+s /project ④ chmod o+t /project
정답
4번
해설
정답: 4. "파일 생성은 누구나, 삭제는 자기 것만" 은 공유 디렉터리에 Sticky-Bit 을 부여하는 전형적 요구다. Sticky-Bit 은 심볼릭 모드에서 'o+t'(또는 8진수 1)로 설정하므로 "chmod o+t /project" 가 맞다.
오답 풀이
- 1번: 'g+s' 는 Set-GID 로, 하위 생성 파일이 디렉터리 그룹을 상속하게 할 뿐 삭제 제한 기능이 없다.
- 2번: 't' 비트는 'others' 자리에 표시되므로 'g+t'(그룹 자리 t)는 의미가 없는 잘못된 표기다.
- 3번: 'o+s' 는 디렉터리에 의미 없는 조합으로 Sticky-Bit 효과를 내지 못한다.
- 4번: 'o+t' 로 Sticky-Bit 을 부여하면 소유자(또는 root)만 자기 파일을 삭제할 수 있어 옳다.
보충 개념 Sticky-Bit(8진수 1)은 디렉터리에 설정 시 그 안의 파일은 소유자·디렉터리 소유자·root 만 삭제할 수 있게 제한한다. ls 출력에서 others 의 x 자리에 't'(rwt)로 표시된다. /tmp 가 대표적 예다.