ОПИСАНИЕ
Системный вызов link создает новую ссылку (элемент каталога) для существующего файла. Аргумент path1 указывает на маршрутное имя существующего файла, аргумент
path2 - на маршрутное имя создаваемого элемента каталога.
Системный вызов link завершается неудачей и ссылка не
создается, если выполнено хотя бы одно из следующих условий:
[ENOTDIR]
Компонент одного из маршрутов не является
каталогом.
[ENOENT]
Компонент одного из маршрутов не существует.
[EACCES]
Для компонента одного из маршрутов отсутствует право на поиск.
[ENOENT]
Файл, заданный маршрутным именем path1, не
существует.
[EEXIST]
Ссылка, заданная маршрутным именем path2,
существует.
[EPERM]
Файл, заданный маршрутным именем path1, является каталогом, а действующий идентификатор пользователя не есть идентификатор суперпользователя.
[EXDEV]
Маршрутные имена path1 и path2 указывают на
разные логические устройства (файловые системы).
[ENOENT]
Аргумент path2 указывает на пустое маршрутное имя.
[EACCES]
Создание ссылки требует записи в каталог,
права на запись в который нет.
[EROFS]
Создание ссылки требует записи в каталог,
расположенный в файловой системе, доступной
только на чтение.
[EFAULT]
Аргумент path1 или path2 указывает за пределы отведенного процессу адресного пространства.
[EMLINK]
Превышается максимально допустимое количество ссылок на файл.
[EINTR]
Во время выполнения системного вызова перехвачен сигнал.
[ENOLINK]
Маршрутное имя path1 или path2 указывает на
удаленный компьютер, связи с которым в данный момент нет.
[EMULTIHOP] Компоненты path1 или path2 требуют многократного обращения к удаленным компьютерам.