Zalecane, 2024

Wybór Redakcji

Różnica między linkiem twardym a łączem miękkim

Linki w systemie Unix są w zasadzie wskaźnikami, które kojarzą się z plikami i katalogami. Główna różnica między linkiem twardym a linkiem miękkim jest taka, że ​​link twardy jest bezpośrednim odnośnikiem do pliku, podczas gdy link miękki jest referencją według nazwy, co oznacza, że ​​wskazuje na plik według nazwy pliku.

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ównaniaTwardy link
Miękki link
PodstawowyDostę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ętyNadal ważne i dostęp do pliku.
Nieważny
Polecenie użyte do stworzenialn
ln -s
numer i-węzłaPodobnie
Różne
Można połączyćDo własnej partycji.Do dowolnego innego systemu plików, nawet w sieci.
Zużycie pamięciMniejWięcej
Względna ścieżka dostępuNie dotyczyDozwolony

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

  1. 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.
  2. 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.
  3. 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 ".
  4. 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.
  5. Twarde łącza są ograniczone do własnych partycji, ale miękkie łącza mogą obejmować różne systemy plików.
  6. Wydajność twardego linka jest w niektórych przypadkach lepsza niż miękkiego łącza.
  7. Ś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.

Top