Jak tworzyć twarde linki w systemie Linux?

How Create Hard Links Linux



Łączenie to interesująca funkcja w Linuksie. W systemach operacyjnych podobnych do UNIX wszystko jest plikiem. Plik jest zasadniczo linkiem do i-węzła, specjalnym rodzajem struktury danych, który przechowuje wszystko o określonym pliku, z wyjątkiem jego oryginalnej nazwy i rzeczywistej zawartości. Jest to funkcja, która łączy dźwignie. Aby utworzyć łącze, należy utworzyć inny plik, który wskazuje na ten sam podstawowy i-węzeł, co inny plik. W wielu sytuacjach jest to niezwykle przydatna metoda.

Sprawdź, jak tworzyć twarde linki w Linuksie.







Twarde linki w Linuksie

Zanim zanurkujemy głębiej, porozmawiajmy trochę o twardych i miękkich linkach. Jest między nimi kilka zasadniczych różnic. W przypadku dowiązania twardego może istnieć tylko w tym samym systemie plików, podczas gdy dowiązanie symboliczne będzie utrzymywało się między systemami plików. Co więcej, można to wykonać tylko na zwykłych plikach. Nie możesz również tworzyć twardych łączy katalogów, więc nie tworzy to pętli katalogów.



Jeśli jeden plik twardego łącza zostanie usunięty, usuwa łącze z bazowego i-węzła.



Polecenie ls może wydrukować i-węzeł docelowego pliku/katalogu.





$ls -na <file_or_dir>

Tworzenie twardych linków

Generowanie twardego łącza jest dość proste. Aby tworzyć linki, ln jest dedykowanym narzędziem dostępnym w prawie wszystkich dystrybucjach Linuksa.



Użyj następującej struktury poleceń, aby utworzyć łącze stałe. Zauważ, że miejsce docelowe powinno znajdować się w tym samym systemie plików. Flaga -v jest dla trybu pełnego.

$ja -v <źródło> <połączyć>


Sprawdź wynik.

$ls -na <cel>


Jeśli chodzi o twarde linkowanie katalogów, nie jest to dozwolone. Hipotetycznie nadal można tworzyć, ale większość dystrybucji Linuksa wyłącza tę funkcję, nawet jeśli uruchamiasz akcję z uprawnieniami roota. Do łączenia katalogów użyj miękkich linków.

Miękkie linki

Łączenie miękkie jest powszechnie określane jako dowiązania symboliczne. Miękkie linkowanie może dotyczyć wielu systemów plików. Z definicji nie jest to standardowy plik, ale raczej plik, który wskazuje na istniejący plik. Tutaj plik miękkiego łącza będzie miał inną wartość i-węzła, ale wskazuje na oryginalny plik.

Podobnie jak przy tworzeniu twardych linków, będziemy używać narzędzia ln. Aby zadeklarować utworzenie dowiązania miękkiego, dodaj flagę -s.

$ja -vs <źródło> <Miejsce docelowe>


Sprawdź wynik.

$ls -na <cel>

Jeśli istnieje już łącze, możesz je zaktualizować za pomocą flagi -f, która wymusza na ln aktualizację łącza bez żadnego potwierdzenia. Alternatywnie możesz użyć flagi -i do interaktywnego tworzenia linków.

$ja -sf <źródło> <Miejsce docelowe>


Nie zapomnij zweryfikować wyniku.

$ls -na <cel>

Znajdowanie linków

Zakładając, że istnieje wiele linków do tego samego pliku, śledzenie ich może być trudne. W takiej sytuacji użyj tej metody, aby znaleźć wszystkie linki.

W tym celu potrzebujemy wartości i-węzła oryginalnego pliku. Użyj następującego polecenia, aby znaleźć numer i-węzła.

$ls -na <plik docelowy>


Teraz użyj numeru i-węzła, aby znaleźć wszystkie linki do tego pliku. Tutaj bieżącym aktywnym katalogiem powinien być katalog, w którym znajduje się oryginalny plik.

$odnaleźć.-inum <wartość_węzła>

Usuwanie linków

Jeśli chcesz wyłączyć twarde łącze, sposobem na to jest usunięcie połączonego pliku.

$rm <połączyć>

Końcowe przemyślenia

Linkowanie to potężne narzędzie, którego możesz użyć w wielu sytuacjach. Chociaż ma swoje własne ograniczenia, może oferować doskonałe korzyści w wielu scenariuszach.

Chcesz dowiedzieć się więcej o poleceniu ln? Sprawdź, jak używać polecenia ln .

Życzymy miłego korzystania z komputera!