mkdir
1. mkdir.1.man
Manpage of MKDIR
MKDIR
Section: User Commands (1)Updated: 1998-11
Index Return to Main Contents
mkdir - mkdir [] ...
POSIX: [-p] [-m ] [--]
GNU ( ): [-p] [-m ] [--verbose] [--help] [--version] [--]
mkdir .- -m , --mode=
- . , chmod(1), .
- -p, --parents
- . umask, `u+wx'. , , . ( , /a , `mkdir /a' , `mkdir -p /a' -- .)
- --verbose
- . --parents.
- --
- .
GNU
- --help
- .
- --version
- .
- --
- .
Index
This document was created by man2html using the manual pages.
Time: 17:41:48 GMT, May 11, 2012
2. mkdir.2.man
Manpage of MKDIR
MKDIR
Section: Руководство программиста Linux (2)Updated: 2010-06-26
Index Return to Main Contents
ИМЯ
mkdir - создаёт каталогОБЗОР
#include <sys/stat.h> #include <sys/types.h> int mkdir(const char *pathname, mode_t mode);
ОПИСАНИЕ
Функция mkdir() пытается создать каталог с именем pathname.В аргументе mode задаются права доступа. Эти права стандартным образом изменяются с помощью согласно umask процесса: права на созданный каталог будут рассчитаны как mode & ~umask & 0777. Другие биты прав на каталог зависят от операционной системы. Для Linux они будут описаны далее.
Создаваемый каталог будет принадлежать фактическому владельцу процесса. Если у родительского каталога установлен флаг set-group-ID, или файловая система смонтирована с семантикой групп в стиле BSD (mount -o bsdgroups или, что одно и тоже, mount -o grpid), то новый каталог унаследует группу владельца от своего родительского каталога; в противном случае группой владельцем станет фактическая группа процесса.
Если у родительского каталога установлен бит set-group-ID, то он будет установлен также и у создаваемого каталога.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении функции mkdir() возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.ОШИБКИ
- EACCES
- У процесса нет прав на запись в родительский каталог, или в одном из каталогов в pathname не разрешён поиск (см. также path_resolution(7)).
- EEXIST
- pathname уже существует (и необязательно как каталог). В этом случае pathname может быть символьной ссылкой, повисшей или нет.
- EFAULT
- Аргумент pathname указывает за пределы доступного адресного пространства.
- ELOOP
- Во время определения pathname встретилось слишком много символьных ссылок.
- EMLINK
- Количество ссылок на родительский каталог превысило бы LINK_MAX.
- ENAMETOOLONG
- pathname слишком длинен.
- ENOENT
- Один из каталогов в pathname не существует или является повисшей символьной ссылкой.
- ENOMEM
- Недостаточное количество памяти ядра.
- ENOSPC
- На устройстве, содержащем pathname, нет места для создания нового каталога.
- ENOSPC
- Новый каталог не может быть создан, так как превышена пользовательская дисковая квота.
- ENOTDIR
- Компонент пути, использованный как каталог в pathname, в действительности таковым не является.
- EPERM
- Файловая система, содержащая pathname, не поддерживает создание каталогов.
- EROFS
- pathname находится на файловой системе, доступной только для чтения.
СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4, BSD, POSIX.1-2001.ЗАМЕЧАНИЯ
В Linux кроме битов прав, соблюдается только бит S_ISVTX. То есть в Linux создаваемый каталог на самом деле получает права, вычисляемые как mode & ~umask & 01777. Смотрите также stat(2).В протоколе, на котором работает NFS, есть множество недоработок. Некоторые из них влияют на mkdir().
СМОТРИТЕ ТАКЖЕ
mkdir(1), chmod(2), chown(2), mkdirat(2), mknod(2), mount(2), rmdir(2), stat(2), umask(2), unlink(2), path_resolution(7)
Index
This document was created by man2html using the manual pages.
Time: 17:41:48 GMT, May 11, 2012



