Linki (dowiązania)
Damian Stelmach
Ostatnia kwestia jak zajmiemy się w tej serii wpisów będą linki zwane dowiązaniami. Sprawa dość prosta jeśli chodzi o samą mechanikę jak i praktyczne wykorzystanie. Czym są linki no to generalnie każdy z Was powinien już wiedzieć. W ogólnym pojęciu link wskazuje na jakiś inny obiekt, plik lub jego zawartość.
W systemach Linux występują dwa rodzaje dowiązań, linków: twarde oraz symboliczne. Dowiązanie twarde tworzy nową nazwę dla zasobu, zapisując ją w nowej lokalizacji (nie kasując poprzedniej), a sam link nie odwołuje się do pliku samego w sobie, ale tylko do jego zawartości.
Brzmi tajemniczo natomiast jest proste w działaniu. Załóżmy, że mamy plik o nazwie plik.txt
z zawartością:
teskt1 teskt2 teskt3
Wykonajmy teraz dowiązanie do tej zawartości, zapisane w katalogu o nazwie link
. Polecenie wyglądało będzie tak:
ln plik.txt link/link_do_plik.txtgdzie
ln
to polecenie uruchamiające tworzenie dowiązania, plik.txt
to nazwa zasobu, do którego tworzymy dowiązanie, a link_do_plik.txt
to nazwa dowiązania. Od teraz ten nowy plik zawiera te same dane co plik źródłowy, a my utworzyliśmy sobie nową nazwę do zasobu
teskt1 teskt2 teskt3
Jeśli usuniemy plik źródłowy, czyli plik.txt
, to ten nowy plik, czyli link_do_plik.txt
pozostanie na dysku wraz z zawartością.
W przypadku drugiego rodzaju dowiązań, zwanych symbolicznymi, sprawa jest dużo prostsza, te dowiązania w swoim działaniu są bardzo podobne do skrótów jakie znamy chociażby z systemu Windows. Wskazują one zwyczajnie na jakiś plik. Skasowanie pliku źródłowego spowoduje, że link, dowiązanie, po prostu przestanie działać prawidłowo. Podobnie z resztą jak skrót w Windowsie.
Utwórzmy teraz dowiązanie symboliczne do pliku o nazwie plik2.txt
. Możemy to zrobić np. tak:
ln -s plik2.txt kat/nowy_plik2.txt
Kiedy wyświetlimy zawartość katalogu, w którym zapisaliśmy dowiązanie miękkie, to zobaczymy na jaki plik wskakuje nam link:
lrwxrwxrwx 1 damian damian 9 Feb 24 12:23 nowy_plik2.txt -> plik2.txt
Skasowanie pliku źródłowego wiązać się będzie oczywiście z tym, że taki link przestanie nam działać.
Zastosowanie dowiązań jest bardzo powszechną praktyką na systemach opartych na jądrze Linux. Ja ostatnio korzystałem z tego rozwiązania konfigurując serwer webowy Apache, tam włączanie poszczególnych modułów może odbywać się właśnie za pomocą dowiązań.
Zamów książki o IT sec z kodem: pasja
Można już zamawiać dwa tomy książek "Wprowadzenie do bezpieczeństwa IT". Mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności! Zamówień można dokonywać tutaj:
Tom 1 Tom 2Pomóż dzieciom
Polska Akcja Humanitarna od wielu lat dożywia dzieci. Prosimy, poświęć teraz dosłownie chwilę i pomóż klikając w oznaczony strzałką zielony brzuszek Pajacyka. Dziękujemy!
Komentarze
Czy macie jakieś pytania, sugestie, uwagi? A może zauważyliście literówkę albo błąd? Dajcie koniecznie znać: kontakt@pasja-informatyki.pl. Dziękujemy za poświęcony czas - to dzięki Wam serwis staje się coraz lepszy!