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

link - создает новое имя файла

НАЗВАНИЕ
link - создает новое имя файла

СИНТАКСИС

#include

int link(const char *oldpath, const char *newpath);

ОПИСАНИЕ
link создает новую ссылку (также известную как "жесткая"
ссылка) на существующий файл. Если newpath существует, то
он не будет перезаписан. Это новое имя может
использоваться точно так же, как и старое, при выполнении
любых операций: оба имени ссылаются на один и тот же файл
(то есть имеют те же права доступа и владельца), и
невозможно определить, какое имя "настоящее".

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

КОДЫ ОШИБОК
EXDEV oldpath и newpath находятся в разных файловых
системах.

EPERM Файловая система, содержащая oldpath и newpath, не
поддерживает жесткие ссылки.

EFAULT oldpath или newpath указывают на каталог,
находящийся за пределами доступного адресного
пространства.

EACCES Запись информации в каталог newpath не разрешена
для uid-процесса, или же один из каталогов oldpath
или newpath не разрешает поиск.

ENAMETOOLONG
Имена каталогов oldpath или newpath являются
слишком длинными.

ENOENT Одна из частей имени oldpath или newpath не
существует или является "висячей" символической
ссылкой.

ENOTDIR
Компонент имени oldpath или newpath не явлется
именем каталога.

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

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

EEXIST newpath уже существует.

EMLINK Файл, на который ссылается oldpath , уже имеет
максимальное количество ссылок.

ELOOP oldpath или newpath содержат зацикленную
символическую ссылку.

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

EPERM oldpath является каталогом.

EIO Ошибка ввода-вывода.

ЗАМЕЧАНИЯ
Жесткие ссылки, созданные с помощью link, не могут
указывать на другие файловые системы. Если это требуется,
используйте symlink.

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

НАЙДЕННЫЕ ОШИБКИ
В файловых системах NFS код возврата может быть неверен в
случае, если NFS-сервер создает ссылку и "отмирает",
прежде чем сообщает об этом. Используйте stat(2), чтобы
узнать, была ли создана ссылка.
Читать новости Linux в Telegram
Linux - link - создает новое имя файла
Мы в соцсетях ✉