특정 디렉토리 하부에 생기는 파일들의 퍼미션을 고정시키고 싶어요.
글쓴이: kldphjeon / 작성시간: 월, 2009/01/05 - 2:00오후
리눅스에서 공용폴더를 만들고 싶습니다.
/a 라는 폴더를 만들어
그 폴더에 누구나 쓰고 지울 수 있게 했습니다만,
tom 이라는 사용자가 nothing 이라는 파일을 만들었을 때,
john 과 같은 다른 사용자도 그 파일을 읽고 수정할 수 있게 만들었으면 합니다.
umask 등을 이용하면 그 사용자가 생성하는 모든 파일의 퍼미션이 영향을 받게 되니,
제가 의도하는 바와 거리가 있습니다.
제가 생각하는 것은 /a 라는 폴더 하부에서는 누가 어떤 파일을 만들더라도
만드는 사람과 상관없이 특정한 유저와 그룹, 퍼미션을 유지하게 하는 것입니다.
어떤 방법을 통하면 제가 생각하는 것을 구현할 수 있을까요?
꼭 제가 원하는 것이 아니라도 비슷한 것에는 어떤 방법이 있나요?
Forums:
음 ACL 을 이용하셔야 할 것 같은데요.
http://www.suse.de/~agruen/acl/chapter/fs_acl-en.pdf
^^
---
사람의 기쁨이나 슬픔 같은 것은...
풀꽃의 희미한 향기만큼도 오래 지속되지 않는다...
---
사람의 기쁨이나 슬픔 같은 것은,
풀꽃의 희미한 향기만큼도 오래 지속되지 않는다.
chmod g+s /a
사용자 A와 B가 aaa 그룹에 속해 있을 경우 다음과 같이 디렉토리에 그룹 권한을 주면 원하는 동작을 비슷하게 하지 않을까 합니다.
$ sudo chgrp aaa /a
$ chmod g+s /a
이후 이 디렉토리에 만들어진 모든 파일은 같은 그룹과 그룹 권한이 유지됩니다.
Nevermind... :)
다시보니 이건 sgid 네요. ;;
다시 보니 sticky-bit 가 아니라 이건 sgid 네요. 제가 착각을 ^^ (아따 챙피한거)
근데 어쨌든 sgid 설정한다고 그게 하위 디렉토리/파일까지 적용되지 않을 것 같습니다.
ACL 이 정답일 듯.
---
사람의 기쁨이나 슬픔 같은 것은...
풀꽃의 희미한 향기만큼도 오래 지속되지 않는다...
---
사람의 기쁨이나 슬픔 같은 것은,
풀꽃의 희미한 향기만큼도 오래 지속되지 않는다.
default ACL이 bash에서 이상하게 동작합니다.
아래에도 문제 현상을 적어놨지만..
원인이 bash 에 있는 걸로 보입니다.
tcsh 에서는 umask 값에 상관없이 default ACL이 계승되지만,
bash 에서는 default ACL 값이 umask 값에 덮어져 버립니다.
bash 에서 umask 값에 상관없이 default ACL 값이 계승되게 하려면 어찌 해야 하나요?
답변 감사합니다.
ACL은 초기 진입이 어려워서 우선 미뤄두고.. ^^
+s 하는 게 sticky bit인거죠?
어디선가 봐서 해봤는데..
잘 안되더라구요..
유저의 umask 값과 상관없이
/a 폴더에 할당된 그룹명을 계승하면서
그 그룹에 대한 rw 퍼미션을 가지게 되는 건가요?
내일 테스트를 해보고 경과보고토록 하겠습니다.
ACL에서 특정 유저에 대해서 default ACL 이 계승이 안되네요..
우선
과 같이 디렉토리를 만들고
와 같이 class 라는 그룹에 access ACL을 dir 디렉토리에 설정하고
와 같이 default ACL을 설정했습니다.
그러면 ACL 정보는 아래와 같이 나옵니다.
그 후 class 그룹의 유저가 dir 디렉토리 하부에 새로운 디렉토리를 만들면 다음과 같이 되는데,
특정 유저의 경우 가음과 같이 mask 값이 변합니다.
tom 과 tony 의 umask는 각각 22 와 0027입니다.
찾아본 바로는 default ACL 이 umask 값에 우선한다고 되어있는데,
무엇이 문제인지 모르겠네요.
도움 부탁드립니다.
댓글 달기