_리눅스 실습 커리큘럼 12/40 · 권한과 사용자 (6주차)_
앞 편에서 SGID 가 "디렉터리면 새 파일이 그 그룹을 상속한다"고 했습니다. 이번 편은 그 성질을 협업 디렉터리에 실제로 쓰고, 그 전에 소유권 자체를 옮기는 chown 을 다룹니다.
chown과 setgid 협업 디렉터리, 왜 필요한가
- 배포 디렉터리를 root 로 풀어 놓으면 웹 서버 계정이 못 읽어 500 오류가 납니다.
- 팀 디렉터리에서 A 가 만든 파일을 B 가 못 고치는 문제는 SGID 로 해결합니다.
- RHCSA 실기의 협업 디렉터리 과제가 정확히 이 조합입니다.
이번 편에서 익힐 것
- 소유자·그룹 변경 —
chown 사용자:그룹,-R - 그룹만 변경 —
chgrp - SGID 디렉터리 —
chmod 2770 - 협업 환경 세팅 순서 — 그룹 → 사용자 → 디렉터리 → 그룹 지정 → 2770
chown과 setgid 협업 디렉터리 핵심 명령어
chown -R nginx:nginx /var/www/app # 배포 디렉터리 통째로
chgrp -R devteam /srv/shared # 그룹만
groupadd devteam
usermod -aG devteam alice
mkdir -p /srv/project
chgrp devteam /srv/project
chmod 2770 /srv/project # rwxrws---
stat -c '%A %G' /srv/project # drwxrws--- devteam
- 그룹 자리가 소문자
s면 SGID 와 그룹 실행이 모두 켜진 정상 상태, 대문자S면 그룹 실행이 빠진 상태입니다. - 그룹에 추가된 사용자는 다시 로그인해야 반영됩니다. 바로 확인하려면
id 사용자.
chown과 setgid 협업 디렉터리 자주 하는 실수
chown -R의-R누락 — 하위 파일이 그대로 남습니다.chmod g+s뒤 확인 생략 — 그룹 불일치나 권한 제약으로 조용히 무시될 수 있습니다.stat으로 보세요.- 순서 — 디렉터리 그룹을 먼저 바꾸고 SGID 를 걸어야 의도한 그룹이 상속됩니다.
chown과 setgid 협업 디렉터리 실습 문제
- 웹 배포 디렉터리 소유권 일괄 변경하기
- 협업 디렉터리 setgid 구성하기
- 팀 협업 환경 설정하기
다음 편
다음 편은 사용자 만들기: useradd·/etc/skel·/etc/default/useradd 입니다. 화·금요일에 이어집니다.
<!-- publish_key:linux-path-20w-p12-post -->

아직 댓글이 없습니다. 궁금한 점이나 풀이 경험을 남겨 보세요.