Provided by: manpages-ru_0.98-4_all bug

ИМЯ

       mkdir - создать каталог

ОБЗОР

       #include <sys/stat.h>
       #include <sys/types.h>

       int mkdir(const char *pathname, mode_t mode);

ОПИСАНИЕ

       mkdir пытается создать каталог, который называется pathname.

       mode задает права доступа, которые получит свежесозданный каталог.  Эти
       права стандартным образом модифицируются с помощью umask: права доступа
       оказываются равны (mode & ~umask).

       Свежесозданный  каталог  принадлежит  фактическому  владельцу процесса.
       Если на родительском каталоге  установлен  флаг  setgid,  или  файловая
       система  смонтирована  с семантикой групп в стиле BSD, то новый каталог
       унаследует  группу-владельца  от  своего  родительского   каталога;   в
       противном случае группой-владельцем станет фактическая группа процесса.

       Если у родительского  каталога  установлен  бит  setgid,  то  он  будет
       установлен также и у свежесозданного каталога.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       mkdir  возвращает  ноль  при успешном завершении или -1, если произошла
       ошибка (в этом случае errno устанавливается должным образом).

ОШИБКИ

       EPERM   Файловая система, содержащая pathname, не поддерживает создание
               каталогов.   EEXIST pathname уже существует (это не обязательно
               каталог).  Эта ошибка также возникает, когда pathname  является
               символической ссылкой, висячей или нет.

       EFAULT  pathname    указывает    за    пределы   доступного   адресного
               пространства.

       EACCES  Родительский каталог  не  позволяет  запись,  или  же  один  из
               каталогов,   перечисленных   в  pathname,  не  позволяет  поиск
               (выполнение).

       ENAMETOOLONG
               pathname слишком длинно.

       ENOENT  Компонент пути pathname  не  существует  или  является  висячей
               символической ссылкой.

       ENOTDIR Компонент  пути,  использованный  как  каталог  в  pathname,  в
               действительности таковым не является.

       ENOMEM  Ядру не хватило памяти.

       EROFS   Файл находится на файловой системе, смонтированной  только  для
               чтения.

       ELOOP   pathname  является  зацикленной  символической ссылкой, то есть
               при подстановке возникает ссылка на неё саму.

       ENOSPC  На устройстве, содержащем  pathname,  нет  места  для  создания
               новой  записи  в  каталоге.   Это  может  произойти также, если
               исчерпана квота дискового пространства пользователя.

СООТВЕТСТВИЕ СТАНДАРТАМ

       SVr4, POSIX, BSD, SYSV, X/OPEN.  SVr4 документирует дополнительные коды
       ошибок EIO, EMULTIHOP и ENOLINK; POSIX.1 не упоминает ELOOP.

       В  протоколе,  на  котором  работает  NFS,  есть множество недоработок.
       Некоторые из них влияют на mkdir.

СМОТРИ ТАКЖЕ

       mkdir(1), chmod(2), mount(2), rmdir(2), unlink(2)

ПЕРЕВОД

       Copyright (C) Alexey Mahotkin <alexm@hsys.msk.ru> 1999-2000