Twardy link łączy pliki i katalogi w tym samym systemie plików, ale link Soft może przekraczać granice systemu plików.
Zanim zrozumiemy linki, powinniśmy najpierw zrozumieć i- węzeł, a i-węzeł to struktura danych złożona z metadanych o pliku, takich jak data utworzenia pliku, uprawnienia do pliku, właściciel pliku i inne.
Wykres porównania
Podstawa do porównania | Twardy link | Miękki link |
---|---|---|
Podstawowy | Dostęp do pliku można uzyskać za pośrednictwem wielu różnych nazw znanych jako twarde linki. | Dostęp do pliku można uzyskać za pomocą różnych odniesień wskazujących, że plik jest znany jako miękki link. |
Sprawdzanie poprawności łącza, gdy oryginalny plik zostanie usunięty | Nadal ważne i dostęp do pliku. | Nieważny |
Polecenie użyte do stworzenia | ln | ln -s |
numer i-węzła | Podobnie | Różne |
Można połączyć | Do własnej partycji. | Do dowolnego innego systemu plików, nawet w sieci. |
Zużycie pamięci | Mniej | Więcej |
Względna ścieżka dostępu | Nie dotyczy | Dozwolony |
Definicja twardego linku
Twarde łącza bezpośrednio łączą dwa pliki w tym samym systemie plików, a do identyfikacji wykorzystuje on numer i-węzła. Twardych linków nie można zaimplementować w katalogach (ponieważ wskazują one na i-węzeł). Kiedy do wygenerowania twardego linku zostanie użyte polecenie " ln ", tworzy on kolejny plik w wierszu poleceń, który może być użyty do odsyłania oryginalnego pliku. Zarówno oryginalny, jak i wygenerowany plik mają ten sam i-węzeł i zawartość; w związku z tym będą mieć te same uprawnienia i tego samego właściciela.
Usunięcie oryginalnego pliku nie ma wpływu na twardy plik połączony, a pozostanie twardy połączony plik. Węzeł trzyma licznik, aby wyliczyć liczbę twardych linków do siebie. Kiedy licznik wskazuje wartość 0, to i węzeł jest opróżniany. Za każdym razem, gdy wprowadzisz jakiekolwiek zmiany w twardym linku, będzie on naśladowany w oryginalnym pliku.
Definicja łącza miękkiego
Łącza miękkie są zwykle alternatywną ścieżką (lub aliasem) dla oryginalnego pliku; są one również określane jako dowiązania symboliczne . Zawiera nazwę "docelowego pliku" linku, który określa, że jest to miękki link. Kiedy dostęp do pliku jest wykonywany, link miękki przekierowuje go do pliku docelowego poprzez ścieżkę zapisaną w temacie miękkiego łącza.
Jest to bardzo przydatne w przypadku systemu operacyjnego Windows, w którym łącze miękkie zachowuje się jak skrót. Tworzenie i usuwanie miękkich łączy nie wpływa na oryginalny plik. Jeśli plik docelowy zostanie usunięty, zwisa miękkie łącze, co oznacza, że nie wskazuje niczego i generuje komunikat o błędzie podczas uzyskiwania dostępu do pliku docelowego. Miękkie łącza nie używają numeru i-węzła, w przeciwieństwie do twardego łącza. Ścieżka absolutna lub względna może być częścią dowiązań symbolicznych.
Kluczowe różnice między łączem twardym i miękkim
- Twardy link to dodatkowa nazwa oryginalnego pliku, który odwołuje się do pliku docelowego i pobiera i-węzeł. W przeciwieństwie do tego miękki link różni się od oryginalnego pliku i jest aliasem do oryginalnego pliku, ale nie używa i-węzła.
- Kiedy oryginalny plik zostanie usunięty, miękki link staje się nieprawidłowy, podczas gdy twardy link jest ważny, nawet jeśli docelowy plik zostanie usunięty.
- W systemie Linux polecenie użyte do utworzenia twardego linku to " ln ". W przeciwieństwie do tego, polecenie używane dla miękkiego łącza to " ln -s ".
- Twardy link ma taki sam numer i-węzła, co nie jest podobne do miękkiego łącza, gdzie plik docelowy i jego miękkie łącze mają odrębny numer i-węzła.
- Twarde łącza są ograniczone do własnych partycji, ale miękkie łącza mogą obejmować różne systemy plików.
- Wydajność twardego linka jest w niektórych przypadkach lepsza niż miękkiego łącza.
- Ścieżka względna i ścieżka bezwzględna są dozwolone w miękkich łączach. Wręcz przeciwnie, ścieżka względna nie jest dozwolona w twardym łączu.
Wniosek
Twardy link nie wymaga dodatkowej przestrzeni i matowej rozdzielczości szybciej, ale zmiany zastosowane do twardego linku odzwierciedlają się w oryginalnym pliku. Z drugiej strony, Soft link wymaga dodatkowej przestrzeni, ale każda zmiana w miękkim łączu nie ma wpływu na oryginalny plik. Miękkie linki są dozwolone do katalogów w przeciwieństwie do twardego linku.