Provided by: manpages-pl-dev_20051117-1_all bug

NAZWA

       symlink - tworzenie nowej nazwy dla pliku

SKŁADNIA

       #include <unistd.h>

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

OPIS

       symlink  tworzy  dowiązanie  symboliczne o nazwie newpath które zawiera
       łańcuch znakowy oldpath.

       Dowiązania symboliczne są interpretowane w czasie działania, tak  jakby
       zawartość  dowiązania  była  podstawiana  do  ścieżki,  przeglądanej by
       znaleźć plik lub katalog.

       Dowiązania symboliczne mogą zawierać składniki .., które (jeśli używane
       na  początku dowiązania) odnoszą się do katalogów nadrzędnych katalogu,
       w którym dane dowiązanie się znajduje.

       Dowiązanie symboliczne (znane również pod  nazwą  miękiego  dowiązania)
       może  wskazywać  na  plik  istniejący,  lub  nie  istniejący; ten drugi
       przypadek znany jest pod pojęciem wiszącego dowiązania.

       Prawa  dostępu  dla  dowiązania  symbolicznego  są   nieistotne;   jego
       właścicielstwo   jest   ignorowane   podczas  podążania  za  nim,  lecz
       sprawdzane podczas usuwania lub przemianowywania, gdy dowiązanie jest w
       katalogu z ustawionym bitem `sticky'.

       Jeśli ścieżka newpath istnieje to nie będzie nadpisana.

WARTOŚĆ ZWRACANA

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

BŁĘDY

       EPERM  System plików zawierający  pathname  nie  zezwala  na  tworzenie
              dowiązań symbolicznych.

       EFAULT oldpath  lub  newpath  wskazuje  poza  dostępną  dla użytkownika
              przestrzeń adresową.

       EACCES Zapis do katalogu zawierającego newpath nie jest  dozwolony  dla
              efektywnego  UID  procesu  wywołującego  tę  funkcję lub jeden z
              katalogów w newpath nie pozwala na przeszukiwanie (wykonywanie).

       ENAMETOOLONG
              oldpath lub newpath było zbyt długie.

       ENOENT Składnik  newpath,  który  powinien być katalogiem, nie istnieje
              lub jest wiszącym  dowiązaniem  symbolicznym  lub  oldpath  jest
              łańcuchem pustym.

       ENOTDIR
              Składnik  użyty jako katalog w newpath w rzeczywistości nie jest
              katalogiem.

       ENOMEM Brak pamięci jądra.

       EROFS  Plik newpath znajduje się na systemie plików tylko dla  odczytu.

       EEXIST newpath już istnieje.

       ELOOP  Podczas  rozwiązywania  newpath  napotkano  zbyt  wiele dowiązań
              symbolicznych.

       ENOSPC Na urządzeniu, zawierającym plik nie ma miejsca na kolejny  wpis
              w katalogu.

       EIO    Wystąpił błąd we/wy.

UWAGI

       Nie jest dokonywane sprawdzenie oldpath.

       Usunięcie   nazwy,   na   którą   wskazuje  dowiązanie  symboliczne,  w
       rzeczywistości spowoduje skasowanie pliku (chyba  że  ma  jeszcze  inne
       twarde  dowiązania).   Jeśli  zachowanie  to nie jest porządane, należy
       używać link.

ZGODNE Z

       SVr4, SVID, BSD 4.3 X/OPEN.  SVr4  dokumentuje  dodatkowe  kody  błędów
       EDQUOT  i  ENOSYS.   Zobacz  open(2) po wiele plików o tej samej nazwie
       oraz NFS.

ZOBACZ TAKŻE

       readlink(2), link(2), unlink(2), rename(2), open(2), lstat(2), ln(1)