link(2) utworzenie nowej nazwy dla pliku

SKŁADNIA

#include <unistd.h>

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

OPIS

Uwaga! To tłumaczenie może być nieaktualne!

link tworzy nowe dowiązanie (nazywane też dowiązaniem twardym) do istniejącego pliku.

Jeśli plik newpath już istnieje, to nie będzie nadpisany.

Ta nowa nazwa może być używana dokłądnie tak samo jak stara w dowolnychoperacjach; obie nazwy odnoszą się do tego samego pliku (i w związku z tym mają te same prawa i właścicielstwo). Nie można też powiedzieć, która nazwa jest `oryginalna'.

WARTOŚĆ ZWRACANA

Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.

BŁĘDY

EXDEV
oldpath i newpath nie leżą na tym samym systemie plików.
EPERM
system plików zawierający oldpath i newpath nie obsługuje tworzenia twardych dowiązań.
EFAULT
oldpath lub newpath wskazuje poza dostępną dla użyrkownika przestrzeń adresową.
EACCES
Zapis do katalogu zawierającego newpath nie jest dozwolony dla efekywnego UID procesu, lub jeden z katalogów w oldpath lub newpath nie daje uprawnień przeszukiwania (wykonania).
ENAMETOOLONG
oldpath lub newpath było zbyt długie.
ENOENT
Składnik katalogu w oldpath lub newpath nie istnieje, lub jest wiszącym dowiązaniem symbolicznym.
ENOTDIR
Składnik oldpath lub newpath używany jako katalog nie jest w rzeczywistości katalogiem.
ENOMEM
Brak dostępnej pamięci jądra.
EROFS
Plik leży na systemie plików tylko dla odczytu.
EEXIST
newpath już istnieje.
EMLINK
Plik wskazywany przez oldpath ma już maksymalną ilość dowiązań.
ELOOP
Podczas rozwiązywania oldpath lub newpath napotkano zbyt wiele dowiązań symbolicznych.
ENOSPC
Na urządzeniu, zawierającym plik nie ma miejsca na nowy wpis w katalogu.
EPERM
oldpath jest katalogiem.
EIO
Wystąpił błąd we/wy.

UWAGI

Twarde dowiązania, tworzone z pomocą link, nie mogą wykraczać poza jeden system plików. W takich sytuacjach można użyć funkcji symlink.

ZGODNE Z

SVr4, SVID, POSIX, BSD 4.3, X/OPEN. SVr4 dokumentuje dodatkowe błędy ENOLINK i EMULTIHOP; POSIX.1 nie dokumentuje ELOOP. X/OPEN nie dokumentuje EFAULT, ENOMEM ani EIO.

USTERKI

Na systemach NFS, wartość zwracana może być nieprawidłowa w wypadku gdy serwer NFS dokonuje tworzenia dowiązania i umiera przed zakomunikowaniem tego faktu. Można użyć stat(2) aby dowiedzieć się czy dowiązanie zostało utworzone.

INFORMACJE O TŁUMACZENIU

Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
man --locale=C 2 link

Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.