Tworzenie linków: hard linki i symlinki
Odwołuj się do jednego pliku z wielu miejsc. Poznaj różnicę między hard linkami a linkami symbolicznymi, dowiedz się, jak tworzyć je za pomocą ln i kiedy używać każdego z nich.
Tworzenie linków: hard linki i symlinki to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Czym jest dowiązanie
Dowiązanie umożliwia wskazywanie danych pliku przez więcej niż jedną nazwę. Linux obsługuje dwa rodzaje: dowiązania twarde i dowiązania symboliczne (miękkie).
Inode: prawdziwy plik
Na dysku plik jest reprezentowany przez inode zawierający dane i metadane. Nazwa pliku to tylko wpis w katalogu wskazujący inode. To klucz do zrozumienia dowiązań.
Tworzenie dowiązania twardego
Dowiązanie twarde to kolejny wpis w katalogu wskazujący ten sam inode. Użyj ln bez opcji.
ln original.txt copy.txt
# both names share the same dataDziałanie dowiązań twardych
Ponieważ obie nazwy wskazują jeden inode, edycja za pomocą dowolnej z nich zmienia te same dane. Plik jest usuwany dopiero po usunięciu ostatniego dowiązania.
rm original.txt # data still reachable via copy.txtOgraniczenia dowiązań twardych
Dowiązania twarde nie mogą przekraczać granic systemów plików i zwykle nie mogą wskazywać katalogów. Nie mogą też wskazywać pliku na innym dysku ani partycji.
Tworzenie dowiązania symbolicznego
Dowiązanie symboliczne to mały plik przechowujący ścieżkę do innego pliku. Utwórz je za pomocą ln -s.
ln -s /var/www/site current
# current -> /var/www/siteDziałanie dowiązań symbolicznych
Dowiązanie symboliczne wskazuje nazwę, a nie inode. Jeśli cel zostanie usunięty lub przeniesiony, dowiązanie symboliczne stanie się uszkodzonym (wiszącym) dowiązaniem.
ls -l current
current -> /var/www/siteDowiązania symboliczne między systemami plików
W przeciwieństwie do dowiązań twardych dowiązania symboliczne mogą przekraczać granice systemów plików i wskazywać katalogi — dlatego używa się ich między innymi do przełączania katalogów z kolejnymi wersjami wydań.
Rozpoznawanie dowiązań za pomocą ls
ls -l pokazuje dowiązania symboliczne za pomocą strzałki i typu pliku l. W przypadku dowiązań twardych kolumna z liczbą dowiązań pokazuje, ile nazw współdzieli inode.
ls -li
12345 -rw-r--r-- 2 user ... # count 2 = hard linkedUsuwanie dowiązań
Użyj rm na dowiązaniu symbolicznym, aby usunąć dowiązanie, a nie cel. Zachowaj ostrożność: końcowy ukośnik przy dowiązaniu symbolicznym do katalogu może powodować nieoczekiwane działanie.
rm current # removes only the symlinkKiedy używać którego rodzaju
Używaj dowiązania symbolicznego do skrótów, odwołań między systemami plików i katalogów (to najczęstsze zastosowanie). Używaj dowiązania twardego, gdy potrzebujesz wielu równoważnych nazw tych samych danych w jednym systemie plików.
Szybki test
Sprawdź, czy rozumiesz ten temat.
Podsumowanie
Poznałeś(-aś) dowiązania: dowiązania twarde dodają nazwę wskazującą ten sam inode (ten sam system plików, bez katalogów; dane pozostają do usunięcia ostatniego dowiązania), natomiast dowiązania symboliczne (ln -s) przechowują ścieżkę, mogą przekraczać granice systemów plików i wskazywać katalogi, ale mogą ulec uszkodzeniu.
Często zadawane pytania
Czy lekcja „Tworzenie linków: hard linki i symlinki” jest bezpłatna?
Tak — pełny tekst „Tworzenie linków: hard linki i symlinki” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Co nauczysz się w „Tworzenie linków: hard linki i symlinki”?
Odwołuj się do jednego pliku z wielu miejsc. Poznaj różnicę między hard linkami a linkami symbolicznymi, dowiedz się, jak tworzyć je za pomocą ln i kiedy używać każdego z nich. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?
Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Tworzenie linków: hard linki i symlinki”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?
Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Wyświetlanie zawartości plików (cat, less, head, tail)
- Zrozumienie uprawnień do plików (chmod, chown)
- Wyszukiwanie plików (find, grep)
- Tworzenie linków: hard linki i symlinki