Przejdź do głównej zawartości

ln


  • ln – uniwersalne narzędzie do tworzenia dowiązań między plikami.
  • Umożliwia tworzenie zarówno dowiązań twardych (hard link), jak i symbolicznych (symlink).
  • Dowiązania twarde wskazują bezpośrednio na dane na dysku, a symboliczne przechowują ścieżkę do pliku docelowego.
  • Jest częścią pakietu GNU Coreutils i działa w większości systemów uniksowych.

Okno terminala
ln [opcje] źródło [cel]
ln [opcje] źródło... katalog_docelowy
  • źródło – istniejący plik lub katalog, do którego chcemy utworzyć dowiązanie.
  • cel – ścieżka nowego dowiązania lub katalog docelowy.

ParametrOpis
-sTworzy dowiązanie symboliczne
-fNadpisuje istniejący plik docelowy
-nTraktuje istniejące dowiązania symboliczne jak zwykłe pliki
-iPyta o potwierdzenie przed nadpisaniem
-vTryb szczegółowy – wyświetla informacje o tworzonych dowiązaniach
-t katalogOkreśla katalog docelowy
--helpWyświetla pomoc polecenia
--versionWyświetla wersję programu

Okno terminala
# Utworzenie dowiązania twardego kopia.txt do pliku oryginal.txt
ln oryginal.txt kopia.txt
# Utworzenie dowiązania symbolicznego link.txt do pliku oryginal.txt
ln -s oryginal.txt link.txt
# Utworzenie dowiązania symbolicznego do katalogu
ln -s /var/log logs
# Utworzenie dowiązań do wielu plików w katalogu docelowym
ln plik1.txt plik2.txt /tmp/
  • Pierwszy przykład tworzy hard link do pliku.
  • Drugi tworzy symlink do pliku.
  • Trzeci – symlink do katalogu.
  • Czwarty – hard linki do wielu plików w katalogu.

  • Dowiązania twarde można tworzyć tylko w obrębie tego samego systemu plików.
  • Symlink może wskazywać na pliki w innym systemie plików lub nawet nieistniejące (tworząc tzw. „broken link”).
  • Usunięcie dowiązania nie usuwa pliku źródłowego, ale usunięcie pliku źródłowego powoduje, że symlink przestaje działać.

Błąd / KomunikatPrzyczynaRozwiązanie
Invalid cross-device linkPróba utworzenia dowiązania twardego na innym systemie plikówUżyj opcji -s do stworzenia symlinka
File existsPlik docelowy już istniejeUżyj -f lub usuń istniejący plik