Provided by: manpages-ru_0.98-4_all bug

ИМЯ

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

ОБЗОР

       #include <unistd.h>

       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 является записью .  or  ..

ЗАМЕЧАНИЯ

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

СООТВЕТСТВИЕ СТАНДАРТАМ

       SVr4, SVID, POSIX, BSD 4.3.   SVr4  документирует  дополнительные  коды
       ошибки ENOLINK и EMULTIHOP; POSIX.1 не документирует ELOOP.

НЕДОСТАТКИ РЕАЛИЗАЦИИ

       На файловых системах NFS код возврата может быть неверен в случае, если
       NFS-сервер создает ссылку и  умирает,  прежде  чем  сообщает  об  этом.
       Используйте stat(2), чтобы узнать, создалась ли ссылка.

СМОТРИ ТАКЖЕ

       symlink(2), unlink(2), rename(2), open(2), stat(2), ln(1), link(8).

ПЕРЕВОД

       Copyright (C) Alexey Mahotkin <alexm@hsys.msk.ru> 1999-2000