Документация по LinuxLinuxDoc.Ru 🔍

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

НАЗВАНИЕ
mkdir - создает каталог

СИНТАКСИС
#include
#include

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

ОПИСАНИЕ

mkdir пытается создать каталог с именем, записанным в
переменной pathname. mode задает права доступа, которые
получит созданный каталог. Эти права изменяются обычным
образом, с помощью umask, и равны (mode & ~umask).
Созданный каталог принадлежит фактическому владельцу
процесса. Если на родительском каталоге установлен флаг
setgid или файловая система похожа на BSD, то новый
каталог унаследует группу-владельца от своего
родительского каталога; в противном случае
группой-владельцем станет фактическая группа процесса.
Если у родительского каталога установлен бит setgid, то он
будет установлен также и у созданного каталога.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном завершении mkdir возвращаемое значение равно
нулю, в случае ошибки возвращается -1 и переменной errno
присваивается номер ошибки.

КОДЫ ОШИБОК
EPERM Файловая система, содержащая pathname, не
поддерживает создание каталогов.

EEXIST Каталог или файл pathname уже существует.

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

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

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

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

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

ENOMEM Недостаточно памяти в системе.

EROFS Ссылается на файл pathname, находящийся в файловой
системе, предназначенной только для чтения.

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

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

СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4, POSIX, BSD, SYSV, X/OPEN. SVr4 документирует
дополнительные коды ошибок EIO, EMULTIHOP и ENOLINK;
POSIX.1 не описывает ELOOP.

В протоколе, на котором работает NFS, есть множество
недоработок. Некоторые из них влияют на mkdir.
Читать новости Linux в Telegram
Linux - mkdir - создает каталог
Мы в соцсетях ✉