mkdir(2) System Calls Manual mkdir(2) mkdir, mkdirat - (libc -lc) #include int mkdir(const char *path, mode_t mode); #include /* AT_* */ #include int mkdirat(int dirfd, const char *path, mode_t mode); glibc ( feature_test_macros(7)): mkdirat(): glibc 2.10: _POSIX_C_SOURCE >= 200809L glibc 2.10: _ATFILE_SOURCE mkdir() path. mode ( inode(7)). umask : ACL (mode & ~umask & 0777). mode . . . set-group-ID BSD (mount -o bsdgroups mount -o grpid) . set-group-ID . mkdirat() mkdirat() mkdir() . path dirfd ( mkdir() ). path dirfd AT_FDCWD path ( mkdir()). path dirfd. openat(2) mkdirat(). mkdir() mkdirat() . -1 errno . EACCES path . ( path_resolution(7).) EBADF (mkdirat()) path dirfd AT_FDCWD . EDQUOT (inodes) . EEXIST path ( ). path . EFAULT path . EINVAL ("basename") path ( ). ELOOP path. EMLINK LINK_MAX. ENAMETOOLONG path . ENOENT path . ENOMEM . ENOSPC path . ENOSPC . ENOTDIR path . ENOTDIR (mkdirat()) path dirfd . EPERM path . EROFS path . EOVERFLOW UID GID ( user_namespaces(7)) . S_ISVTX mode . glibc mkdirat() glibc mkdir(). path glibc /proc/self/fd dirfd. POSIX.1-2024. mkdir() 4.2BSD, SVr4, POSIX.1-1988. mkdirat() glibc 2.4, Linux 2.6.16, POSIX.1-2008. NFS. mkdir(). mkdir(1), chmod(2), chown(2), mknod(2), mount(2), rmdir(2), stat(2), umask(2), unlink(2), acl(5), path_resolution(7) 3 . . : . 6.18 11 2026 mkdir(2)