Dowiązanie symboliczne
Dowiązanie symboliczne (łącze symboliczne, ang. symbolic link, często skracane jako symlink) – specjalny rodzaj pliku w systemach plików. Wskazuje on, odwołując się za pomocą nazwy, na dowolny inny plik lub katalog (który może nawet w danej chwili nie istnieć). Odwołanie jest niewidoczne na poziomie aplikacji, tzn. jest traktowane jak zwykły plik lub katalog.
Podczas typowych operacji na dowiązaniu symbolicznym system automatycznie próbuje odnaleźć obiekt docelowy i pracować na zawartości odnalezionego zbioru – a jeśli jest to niemożliwe, zwróci odpowiedni błąd. Jednocześnie, jeśli zachodzi taka potrzeba, programy mogą zidentyfikować oraz odczytać lub zmodyfikować samo dowiązanie.
Dowiązanie symboliczne powstało w celu oszczędzania miejsca w systemie plików w sytuacjach, gdy niezbędna jest większa elastyczność, niż jest to możliwe przy dowiązaniach twardych – dowiązania symboliczne pozwalają na odwołania do dowolnych obiektów, w tym katalogów, i nie są ograniczone do pojedynczej partycji. Dodatkowo ich zachowanie jest bardziej intuicyjne w przypadku usunięcia lub podmiany pliku, na który wskazują.
Polecenia
[edytuj | edytuj kod]Do stworzenia dowiązania symbolicznego służy polecenie:
W systemach Unix: ln z opcją -s
ln -s plik_istniejący link_symboliczny
W systemach Microsoft Windows od wersji Vista: mklink
mklink [[/D] | [/H] | [/J]] nazwa sciezka
* /D – tworzy dowiązanie katalogów, domyślnie jest tworzone dowiązanie plików * /H – tworzy dowiązanie twarde * /J – tworzy punkt połączenia katalogów (junction point) * nazwa – określa nazwę nowego dowiązania symbolicznego * sciezka – określa lokalizację, do której ma odwoływać się nowe dowiązanie.
Tak jak w przypadku normalnych plików i folderów, komendy del i rmdir mogą być użyte do usunięcia dowiązań do plików i folderów:
- Dowiązania do plików:
del linkname
- Dowiązania do folderów:
rmdir linkname
Implementacje
[edytuj | edytuj kod]Dowiązania symboliczne są dostępne w większości systemów uniksowych.
W starszych systemach rodziny Microsoft Windows odpowiednikiem dowiązania symbolicznego jest skrót (shortcut), a systemie Mac OS odpowiednikiem jest alias. W obu tych wypadkach dowiązanie ma formę pliku zawierającego informację o elemencie docelowym i nie jest osadzone w architekturze systemu plików, przez co jest dużo mniej funkcjonalne.
Następca systemu Mac OS, system OS X obsługuje równolegle dowiązania symboliczne i aliasy.
Od Windows 2000 w systemie plików NTFS dostępne są punkty połączenia katalogów (junction point) które umożliwiają powiązanie katalogów, ale tylko w obszarze woluminów lokalnych.
Od Vista w systemie plików NTFS możliwe jest stworzenie dowiązania symbolicznego lub twardego poprzez konsolowe polecenie mklink.
Aliasy są specyficzną funkcją systemu Mac OS, korzystającą z właściwości systemów plików Mac OS Standard (HFS) lub Mac OS Extended (HFS+). Alias, w przeciwieństwie do dowiązania symbolicznego:
- odnosi się do unikatowego identyfikatora pliku, co powoduje, że stale wskazuje na ten sam plik lub katalog, nawet, jeśli został on przeniesiony w inne miejsce w obrębie tej samej partycji/dysku (przy czym od wersji Mac OS X 10.2 wzwyż najpierw sprawdzana jest ścieżka, potem identyfikator, co upodabnia zachowanie aliasu do dowiązania s.);
- może przechowywać własną ikonę;
- nie może być wykorzystywany z poziomu linii poleceń.