Co to są dowiązania twarde i symboliczne?

Śnieżynka

Wygadany
Dołączył
4 Listopad 2012
Posty
88
Reakcje/Polubienia
2
Miasto
Polska
Czy ktoś z Was może mi napisać co to są dowiązania twarde i symboliczne, chodzi mi o system windows, ale wszystko jedno czy napiszecie na przykładzie windowsa czy linuxa bo to chyba jedno i to samo (dowiązania)
 

al

Forumowiszcze
Członek Załogi
Administrator
Dołączył
22 Lipiec 2012
Posty
12401
Reakcje/Polubienia
12551
Miasto
Somewhere over the rainbow.
Nie wiem czy Ci to pomoże ale ja się w tym temacie "dokształcałem" z tego:

W rzeczywistości, katalogi nie tyle ,,zawierają'' same pliki, co pewne meta-dane opisujące te pliki (i umożliwiające dostęp do danych zapisanych w tych plikach). Fakt ten ma istotną konsekwencję praktyczną: jednemu i temu samemu plikowi (jako zbiorowi danych) może odpowiadać więcej niż jeden wpis, w tym samym lub w różnych katalogach, i sytuacja taka jest całkowicie legalna. Mówimy wtedy o ,,twardych dowiązaniach'' (ang. hard links). Wszystkie takie dowiązania, tj. różne pozycje katalogowe wskazujące na te same zbiory danych, są równoprawne; usunięcie jednego z nich nie spowoduje utraty dostępu do odpowiadających mu danych (tj. ich ,,skasowania''), dopóki nie zostanie usunięte ostatnie takie dowiązanie. Dopiero wtedy miejsce na dysku zajmowane przez te dane zostanie dołączone do ,,mapy wolnej przestrzeni'' utrzymywanej przez system, i (w trudnym do przewidzenia czasie) zostanie ponownie wykorzystane na zapis kolejnych danych.

Nie ma prostego sposobu, by ustalić jakie konkretnie twarde dowiązania do danego pliku istnieją w określonej chwili. Łatwo dostępna jest jedynie informacja o liczbie istniejących twardych dowiązań. Istnienie twardych dowiązań podlega ponadto pewnym ograniczeniom: większość systemów unixowych nie pozwala na tworzenie twardych dowiązań do katalogów (w odróżnieniu do plików ,,zwyczajnych'', a to ze względu na możliwość wytworzenia ,,pętli'' dowiązań); co ważniejsze jednak, wszystkie twarde dowiązania do danego pliku muszą znajdować się w poddrzewie drzewa katalogów odpowiadającym temu samemu fizycznemu urządzeniu (np. partycji dyskowej).

To ostatnie ograniczenie nie obowiązuje w przypadku dowiązań ,,miękkich'', zwanych też symbolicznymi (ang. soft links, symbolic links). W odróżnieniu od dowiązania twardego, dowiązanie symboliczne nie jest równoprawnym wpisem katalogowym wskazującym na dany plik, lecz specjalnym typem pliku, zawierającym jedynie informację o innym wpisie katalogowym na który wskazuje (zamiast wskazywać ,,bezpośrednio'' na plik). Usunięcie dowiązania symbolicznego w żadnym przypadku nie stanowi ,,skasowania'' odpowiednich danych, za to możliwa jest sytuacja, gdy dowiązanie symboliczne wskazuje ,,w próżnię'', tj. na nieistniejącą pozycję katalogową. Z tymi zastrzeżeniami, z dowiązania symbolicznego można korzystać tak samo jak z ,,prawdziwej'' pozycji katalogowej wskazującej na plik. W tym przypadku nie obowiązuje również zakaz tworzenia dowiązań wskazujących na katalogi. Tworzenie ,,łańcucha'' kolejnych dowiązań symbolicznych również jest legalne, lecz długość (liczba ,,ogniw'') takiego łańcucha podlega ograniczeniom.

Źródło

Zaloguj lub Zarejestruj się aby zobaczyć!

Pozostaje też wszechwiedząca Wikipedia

Dowiązanie symboliczne

Zaloguj lub Zarejestruj się aby zobaczyć!
Dowiązanie twarde

Zaloguj lub Zarejestruj się aby zobaczyć!
 
A

Anonymous

Najprościej można to ująć tak:
Dowiązanie twarde (sztywne) wskazuje miejsce na dysku, gdzie się znajduje plik. Inaczej mówiąc dowiązanie twarde jest to wskazanie na ten sam plik w innym miejscu niż nastąpiło pierwsze dowiązanie. Mogą być tylko w obrębie tego samego systemu plików. Natomiast dowiązania twarde między nośnikami są niemożliwe. Nie można też tworzyć twardych dowiązań do katalogów, bo można by utworzyć dowiązanie twarde powodujące pętle (wyjątek Solaris). Dopiero usunięcie ostatniego dowiązania twardego powoduje usunięcie pliku z dysku.

Dowiązanie miękkie (symboliczne) wskazuje plik (ścieżkę do niego). Jednak usunięcie wskazywanego pliku powoduje, iż plik faktycznie zostanie usunięty. Dowiązanie miękkie nie broni przed tym, można je porównać do skrótu z Windows'a. Można tworzyć dowiązania miękkie do katalogów - wyraźnie różniące się od plików.

Porównaj też: „Linux - Kurs Podstawowy - opracował Tomasz Michalewicz”:

Zaloguj lub Zarejestruj się aby zobaczyć!
 
A

Anonymous

Dowiązania symboliczne

Dowiązanie symboliczne (łącze symboliczne, ang. symbolic link, często skracane jako symlink) to 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ą
Źródło: wikipedia

Mówiąc po ludzku, dowiązanie symboliczne odwołuje się do pliku lub katalogu.
Podczas wykonywania jakichkolwiek operacji system stara się odnaleźć poprzez dowiązanie symboliczne obiekt docelowy (do którego prowadzi dowiązanie) jeżeli system nie odnajdzie obiektu docelowego ukaże się odpowiedni komunikat informujący o tym, że nie może znaleźć pliku docelowego, dowiązania symboliczne nie ograniczają nas tylko do jednej partycji, nasz plik może być np. na dysku C:\, natomiast dowiązanie może znaleźć się na dysku D:\
W systemie windows dowiązaniem symbolicznym jest dobrze wszystkim znany skrót


Dowiązania twarde (hard links). Dowiązanie twarde to utworzenie nowej nazwy dla istniejącego pliku. Jeśli wyobrazimy sobie plik jako jego nazwę i dane na które ta nazwa wskazuje to można powiedzieć, że dowiązanie twarde to utworzenie nowej nazwy wskazującej na te same dane. Polecenie to jest podobne do kopiowania pliku z tym, że przy kopiowaniu tworzona jest niezależna kopia pliku a przy dowiązaniu twardym tworzona jest tylko nowa nazwa, która wskazuje na ten sam istniejący już plik


Zaloguj lub Zarejestruj się aby zobaczyć!
 
Do góry