UNLINK(2) UNLINK(2) НАЗВАНИЕ unlink - удаление элемента каталога СИНТАКСИС |int unlink (path) |char *path; ОПИСАНИЕ Системный вызов unlink удаляет элемент каталога, задан- ный маршрутным именем, на которое указывает аргумент path. Системный вызов unlink завершается неудачей и элемент каталога не удаляется, если выполнено хотя бы одно из следующих условий: [ENOTDIR] Компонент маршрута не является каталогом. [ENOENT] Заданный файл не существует. [EACCES] Нет права на поиск для компонента маршрута. [EACCES] Удаление элемента требует записи в каталог, права на запись в который нет. [EPERM] Заданный файл является каталогом, а дейст- вующий идентификатор пользователя не есть идентификатор суперпользователя. [EBUSY] Элемент каталога, который должен быть уда- лен, является точкой подключения для смон- тированной файловой системы. [ETXTBSY] Удаляемый элемент каталога является послед- ней ссылкой на программный файл, который выполняется. [EROFS] Удаляемый элемент каталога принадлежит фай- ловой системе, доступной только на чтение. [EFAULT] Аргумент path указывают за пределы отведен- ного процессу адресного пространства. [EINTR] Во время выполнения системного вызова пе- рехвачен сигнал. [ENOLINK] Маршрутное имя path указывает на удаленный компьютер, связи с которым в данный момент нет. [EMULTIHOP] Компоненты path требуют многократного обра- щения к удаленным компьютерам. Когда все ссылки на файл удалены и нет процесса, для которого этот файл является открытым, занимаемое файлом пространство освобождается и файл перестает существо- вать. Если один или более процессов имеют файл откры- тым, когда удаляется последняя ссылка на него, то фак тически уничтожение файла откладывается до момента зак- рытия его всеми процессами. СМ. ТАКЖЕ close(2), link(2), open(2). rm(1) в Справочнике пользователя. ДИАГНОСТИКА При успешном завершении результат равен 0; в случае ошибки возвращается -1, а переменной errno присваивает ся код ошибки.