Dowiązanie twarde

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, szukaj

Dowiązanie twarde (łącze stałe, ang. hard link) jest to umieszczona w systemie plików referencja wskazująca na konkretny, istniejący wcześniej i-węzeł w obrębie tej samej partycji. Dla systemu operacyjnego, dowiązanie takie jest po prostu dodatkową nazwą dla wskazywanego obiektu – plik z n dowiązaniami ma n nazw. Aby obiekt w systemie plików został skasowany, muszą zostać usunięte wszystkie odwołujące się do niego dowiązania. Stąd funkcja systemowa do kasowania plików w języku C nazywa się unlink – kasowany nie jest plik, ale jedynie jego nazwa oraz dekrementowany jest wskaźnik dowiązań (dopiero gdy spadnie on do zera, system automatycznie zwalnia zajętą przestrzeń dyskową – zwalnia i-węzeł).

Domyślnie każdy folder w uniksowych systemach plików posiada zaraz po utworzeniu dwa dowiązania twarde – swoją nazwę (np. /home/fizyk/przyklad) oraz wewnątrz dowiązanie "."(kropka). Dodatkowo, jeśli folder zawiera podfoldery, to w każdym z nich znajduje się dowiązanie ".."(dwie kropki) wskazujące na niego jako folder nadrzędny. Ze względu na możliwość tworzenia nieskończonych pętli przez tworzenie nieprawidłowych dowiązań do katalogów, niektóre systemy nie pozwalają na tworzenie nowych dowiązań tego typu lub pozwalają na to tylko użytkownikowi root.

Spis treści

[edytuj] Systemy uniksowe

W systemach Unix do stworzenia dowiązania twardego służy polecenie ln:

$ ln plik_istniejący dowiązanie_twarde

Numer i-węzła oraz liczba dowiązań można sprawdzić wydając polecenie:

$ ls -li dowiązanie_twarde
360023 -rw-r-----   2  linio   linio  143 2002-12-08 20:21 dowiązanie_twarde

Kolejne wypisane pola (pola rozdzielone są spacjami) od lewej to:

  • numer i-węzła (tutaj: 360023)
  • typ pliku wraz z prawami dostępu
  • liczba dowiązań twardych (tutaj: 2)

[edytuj] System operacyjny Windows

Użycie dowiązań twardych w środowisku Microsoft Windows jest znacznie mniej rozpowszechnione. Na partycjach NTFS możliwe jest utworzenie twardych dowiązań (nazwanych w systemie Windows łączami stałymi) przy pomocy polecenia fsutil jak w poniższym przykładzie:

fsutil hardlink create dowiązanie.pdf oryginał.pdf

Polecenie to istnieje w wersji XP, Vista oraz 7

[edytuj] Zobacz też

[edytuj] Linki zewnętrzne

Osobiste
Przestrzenie nazw

Warianty
Działania
Nawigacja
Dla czytelników
Dla wikipedystów
Narzędzia
Drukuj lub eksportuj
W innych językach