Notice
Recent Posts
Recent Comments
Today
Total
05-06 03:37
Archives
관리 메뉴

Jeongchul Kim

리눅스 umask - 리눅스 시스템 프로그래밍 본문

Linux

리눅스 umask - 리눅스 시스템 프로그래밍

김 정출 2016. 2. 29. 13:30


리눅스 umask - 리눅스 시스템 프로그래밍


open과 creat로 새로운 파일을 생성할 때 파일에 대한 초기 접근 권한을 설정한다.


umask는 프로세스가 새로운 파일을 생성할 때 적용할 수 있는 접근 권한 중 설정되지 않아야 하는 항목을

제한할때 사용합니다.

즉 umask에 의해 등록된 제한된 접근 권한은 새로운 파일을 생성할 때 초기 접근 권한 값으로 지정하더라도 실제로는 적용되지 않는다.


mode_t umask(mode_t mask);


> mask : 파일에 대한 접근 권한 값으로 mask로 지정한 항목은 파일 생성시 해당 권한 값을 적용되지 않는다.

> return 값 : umask의 실행은 항상 성공하며, 기존의 mask 값을 반환한다.

> 헤더파일 : <sys/types.h>, <sys/stat.h>


ex umask(037) -> Group에 write,execue 제한 / Other에 R,W,E 전부 제한


#include <unistd.h>

#include <sys/types.h>

#include <sys/stat.h>

#include <fcntl.h>

int main() {

int fd;

mode_t oldmask;

oldmask = umask(023);

filedes = open("umask.txt", O_CREAT, 0777);

close(fd);

}



umask.txt가 0777로 접근 권한자를 줬음에도 불구하고 023으로 제한함에 따라 Group은 w(2), Other은 w,x(3)을 제한하고 있다.



Comments