NAZWA¶
symlink - tworzenie nowej nazwy dla pliku
SKŁADNIA¶
#include <unistd.h>
int symlink(const char *oldpath, const char
*newpath);
OPIS¶
Uwaga! To tłumaczenie może być nieaktualne!
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)
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 symlink
Prosimy o pomoc w aktualizacji stron man - więcej informacji można
znaleźć pod adresem
http://sourceforge.net/projects/manpages-pl/.