rmdir(2) System Calls Manual rmdir(2)

ИМЯ

rmdir - удалить каталог

БИБЛИОТЕКА

Стандартная библиотека языка C (libc, -lc)

СИНТАКСИС

#include <unistd.h>
int rmdir(const char *pathname);

ОПИСАНИЕ

rmdir() удаляет каталог, который должен быть пуст.

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

При успешном выполнении возвращается 0. При ошибке возвращается -1, а в errno содержится код ошибки.

ОШИБКИ

Нет прав на запись в каталог, содержащийся в pathname, или в одном из каталогов в pathname не разрешён поиск (см. также path_resolution(7)).
В данный момент pathname используется системой или одним из процессов, что предотвращает удаление. В Linux это означает, что pathname используется в качестве точки монтирования или является корневым каталогом вызвавшего процесса.
Аргумент pathname указывает за пределы доступного адресного пространства.
pathname содержит . в качестве последнего компонента.
Во время определения pathname встретилось слишком много символьных ссылок.
pathname слишком длинен.
Один из каталогов в pathname не существует или является повисшей символьной ссылкой.
Недостаточное количество памяти ядра.
pathname, или его компонент, используемый в качестве каталога в pathname, фактически, не является каталогом.
pathname содержит элементы, отличные от . и .. ; или последним компонентом pathname является ... POSIX.1 также позволяет возвращать EEXIST в такой ситуации.
На каталоге, содержащемся в pathname, установлен закрепляющий (sticky) бит (S_ISVTX) и эффективный идентификатор пользователя не совпадает с пользовательским ID файла или каталога, его содержащего, что требуется для удаления, и процесс не имеет прав (Linux: не имеет мандата CAP_FOWNER).
Файловая система, содержащая pathname, не поддерживает удаление каталогов.
pathname указывает на файл в файловой системе, доступной только для чтения.

СТАНДАРТЫ

POSIX.1-2008.

ИСТОРИЯ

POSIX.1-2001, SVr4, 4.3BSD.

ОШИБКИ

Неточности в протоколе NFS могут приводить к неожиданному исчезновению каталогов, которые всё ещё используются.

СМОТРИТЕ ТАКЖЕ

rm(1), rmdir(1), chdir(2), chmod(2), mkdir(2), rename(2), unlink(2), unlinkat(2)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) aereiae <aereiae@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Lockal <lockalsash@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Баринов Владимир и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Справочные страницы Linux 6.9.1