Skip to main content

Jak utworzyć dowiązania symboliczne za pomocą polecenia ln

Linux #1: Terminal - Operacje na plikach i katalogach (Kwiecień 2025)

Linux #1: Terminal - Operacje na plikach i katalogach (Kwiecień 2025)
Anonim

Dowiązania symboliczne są używane tak jak skróty. Mogą być używane do skracania naprawdę długich ścieżek i uzyskania łatwego dostępu do plików na innych partycjach i dyskach.

Ten przewodnik pokazuje wszystko, co musisz wiedzieć o dowiązaniach symbolicznych, ale możesz przejrzeć stronę podręcznika dla polecenia ln dla innych przełączników.

Pierwsze kroki

Dostępne są dwa typy łączy:

  • Twarde linki
  • Miękkie linki

Zanim zaczniesz, dobrze jest wiedzieć, jakie są twarde linki i dlaczego z nich korzystasz, ale ten przewodnik będzie głównie skupiał się na miękkich linkach lub dowiązaniach symbolicznych, ponieważ są one bardziej znane.

Co to jest twardy link?

Każdy plik w systemie plików jest identyfikowany przez numer zwany i-węzłem. Zazwyczaj nie przejmujesz się tym, ale ważność tego ujawnia się, gdy chcesz utworzyć twardy link.

Twardy link umożliwia przypisanie innej nazwy do pliku w innej lokalizacji, ale zasadniczo jest to dokładnie ten sam plik. Kluczem łączącym pliki jest numer i-węzła. Wielką zaletą twardych łączy jest to, że nie zajmują one żadnej fizycznej przestrzeni dyskowej.

Twardy link ułatwia kategoryzowanie plików. Na przykład wyobraź sobie, że masz folder pełen zdjęć. Można utworzyć jeden folder o nazwie zdjęcia z wakacji, inny folder o nazwie zdjęcia dzieci i trzeci o nazwie zdjęcia zwierząt.

Możliwe, że będziesz mieć zdjęcia, które pasują do wszystkich trzech kategorii, ponieważ zostały zrobione na wakacjach z twoimi dziećmi i psami.

Możesz umieścić główny plik na zdjęciach z wakacji, a następnie utworzyć twardy link do tego zdjęcia w kategorii zdjęć dla dzieci i inny twardy link w kategorii zdjęć dla zwierząt domowych - i nie zostanie zajęte dodatkowe miejsce.

Wszystko, co musisz zrobić, to wprowadzić następujące polecenie, aby utworzyć twardy link:

ln / path / to / file / path / to / hardlink

Jeśli w folderze zdjęć na wakacje masz zdjęcie o nazwie BrightonBeach i chcesz utworzyć łącze w folderze zdjęć dzieci, użyj następującego polecenia:

ln /holidayphotos/BrightonBeach.jpg /kidsphotos/BrightonBeach.jpg

Możesz określić liczbę plików połączonych z tym samym i-węzłem za pomocą polecenia ls w następujący sposób:

ls-lt

Wynik będzie coś w stylu -rw-r - r-- 1 nazwa użytkownika nazwa grupy data nazwa pliku.

Pierwsza część pokazuje uprawnienia użytkownika, ale ważną częścią jest liczba po uprawnieniach i przed nazwą użytkownika.

Jeśli liczba wynosi 1, jest to jedyny plik wskazujący na konkretny i-węzeł (tzn. Nie jest połączony). Jeśli liczba jest większa niż jeden, oznacza to, że trudno jest połączyć 2 lub więcej plików.

Co to jest link symboliczny?

Dowiązanie symboliczne jest jak skrót z jednego pliku do drugiego. Zawartość dowiązania symbolicznego to adres rzeczywistego pliku lub folderu, z którym jest połączony.

Korzyść z używania dowiązań symbolicznych polega na tym, że można łączyć pliki i foldery na innych partycjach i na innych urządzeniach.

Inną różnicą między linkiem twardym a linkiem symbolicznym jest utworzenie twardego linku względem pliku, który już istnieje, natomiast link miękki może zostać utworzony przed plikiem, który wskazuje na istniejący.

Aby utworzyć dowiązanie symboliczne, użyj następującej składni:

ln -s / path / to / file / path / to / link

Jeśli obawiasz się nadpisania łącza, które już istnieje, możesz użyć przełącznika -b w następujący sposób:

ln -s -b / path / to / file / path / to / link

Spowoduje to utworzenie kopii zapasowej linku, jeśli już istnieje, poprzez utworzenie tej samej nazwy pliku, ale z tyldą na końcu (~). Jeśli plik już istnieje o tej samej nazwie co dowiązanie symboliczne, pojawi się błąd.

Możesz wymusić na linku zastąpienie pliku za pomocą następującego polecenia:

ln -s -f / ścieżka / do / plik / ścieżka / do / link

Prawdopodobnie nie chcesz używać przełącznika -f bez przełącznika -b, ponieważ utracisz oryginalny plik.

Inną opcją jest otrzymanie wiadomości z pytaniem, czy chcesz zastąpić plik, jeśli już istnieje. Możesz to zrobić za pomocą następującego polecenia:

ln -s -i / path / to / file / path / to / link

Jak powiedzieć, czy plik jest dowiązaniem symbolicznym?

Uruchom następujące ls dowództwo:

ls-lt

Jeśli plik jest dowiązaniem symbolicznym, zobaczysz coś takiego:

myshortcut -> mój plik

Możesz użyć dowiązania symbolicznego, aby przejść do innego folderu.

Na przykład wyobraź sobie, że masz link do / home / music / rock / alicecooper / heystoopid nazywa heystoopid.

Możesz uruchomić następującą komendę cd, aby przejść do tego folderu, używając następującego polecenia:

cd heystoopid