open 파일 권한 때문에 물어볼것이 생겨 질문드립니다
글쓴이: kjr8318 / 작성시간: 화, 2012/12/04 - 11:43오전
재가 Cent os 6.3 버전을 쓰고 있는대요
fd0 = open("./test0", O_CREAT , 0666);
if(fd0 == -1)
{
exit(-1);
}
close(fd0);
위 처럼 파일을 하나 만드는 프로그램인대요
확인해보니 파일의 권한은 644로 되더군요
숫자로 말고 mode_t 변수로도 해보고
CREAT 함수로도 똑같이 만들어 봤는대
역시나 644권한으로 나오더군요
혹시 이건 제가 쓰고 있는 OS 때문에 생기는 현상인가해서요
아시는분이 계시다면 답변좀 부탁드립니다.
Forums:
umask 한번 확인해 보시기 바랍니다.
아마 umask가 0022로 되어있지 않나 싶네요.
아 그렇내요
umask가 0022로 되있으면 chmod를 재외하고는 권한 변경이 불가능한건가요?
그렇군요 감사합니다
umask 함수로 umask 값을 바꿀 수 있네요.
open을 호출하기전에 umask(0)을 호출하여 umask값을 0으로 바꾸고 생성하셔도 되구요.
아니면 open후에 fchmod를 이용해서 권한을 변경하셔도 될 것 같네요.
댓글 달기