GNU/Linux >> Znalost Linux >  >> Linux

Příkaz ln v Linuxu:Vytvářejte měkké a pevné odkazy

Odkaz je odkaz na jiný soubor. Odkazy dávají stejnému souboru více jmen a umožňují mu žít na dvou nebo více místech současně.

Existují dva typy odkazů:

  • Soft odkaz nebo symbolický odkaz:Toto je pouze zkratka k původnímu souboru.
  • Pevný odkaz:Ukazuje na paměťové umístění původního souboru.

Tento obrázek ukazuje, jak fungují dva typy odkazů:

Příkazem ln se vytvářejí pevné i měkké odkazy.

V tomto tutoriálu vám ukážu, jak používat příkaz ln pro vytváření různých typů odkazů v Linuxu.

Příklady příkazu ln

Syntaxe příkazu ln je jednoduchá:

 ln [option] target_file link_name

Dovolte mi ukázat vám několik příkladů použití příkazu ln k vytváření odkazů v Linuxu.

Chcete-li vytvořit pevný odkaz na soubor, můžete použít příkaz ln bez jakýchkoli možností, jako je tato:

 ln target_file link_name

Chcete-li vytvořit symbolický odkaz na soubor, použijte volbu -s s názvem cílového souboru a názvem odkazu

 ln -s target_file link_name

Většina linuxových terminálů zobrazí softwarový odkaz jinou barvou spolu s cílem, na který ukazuje.

Také si všimnete, že odkazy začínají l místo obvyklého - pro soubory v zobrazení dlouhého seznamu.

I když váš terminál nezobrazuje měkké odkazy v jiné barvě, můžete odkazy identifikovat tímto způsobem.

Vytvoření měkkého odkazu na adresář je stejné jako vytvoření symbolického odkazu na soubor. Stačí pouze nahradit název/cestu cílového souboru názvem/cestou adresáře.

 ln -s target_directory link_name

Všimnete si, že barva měkkého odkazu a pevného odkazu se v terminálu Linux obvykle liší. Pevný odkaz na adresář není možný (normálně).

Existující odkaz můžete přepsat. Ve výchozím nastavení, pokud se pokusíte použít existující odkaz k odkazu na nový soubor, zobrazí se chyba:

ln: failed to create symbolic link 'soft-link-to-file': File exists

Příkaz ln má pro tento účel dvě možnosti:

  • -i :Interaktivní režim se vás zeptá, zda chcete přepsat existující odkaz.
  • -f :Vynucený režim pouze aktualizuje stávající odkaz bez jakéhokoli potvrzení.

Předpokládejme, že chcete vynutit aktualizaci symbolického odkazu. Zde je to, co můžete udělat:

ln -sf new_file existing_soft_link

Nezapomeňte přidat s pro měkký odkaz, jinak převedete měkký odkaz na pevný odkaz.

Normálně, když použijete příkaz ls s -l možnost, zobrazí soubor, na který ukazuje.

Ale pokud existuje řetězec odkazů, nezobrazí původní soubor. Například vytvoříte odkaz na soubor a poté vytvoříte další odkaz na první odkaz. V dlouhém seznamu bude druhý odkaz ukazovat na první odkaz.

Chcete-li najít původní soubor z řetězce odkazů, můžete použít readlink -f následujícím způsobem:

readlink -f soft_link

-f options znamená 'follow' jako v 'follow the chain'.

Tento obrázek lépe vysvětluje příklad:

Nyní, když víte, jak vytvářet odkazy, pojďme stručně, proč potřebujeme odkazy? K jakému praktickému účelu slouží?

Případů použití může být několik. Řekněme, že jste si stáhli software, který je dodáván s jeho kódem a spustitelným souborem. Celou věc ponecháte v /opt adresář. Chcete-li však program spustit odkudkoli, musíte jeho spustitelný soubor umístit do /usr/bin adresář.

Pokud přesunete spustitelný soubor do tohoto adresáře, nemusí fungovat, protože potřebuje přístup k některému kódu a nenajde cestu k těmto souborům z /usr/bin adresář. Zde můžete vytvořit odkaz na tento spustitelný soubor v /usr/bin adresář.

Tímto způsobem lze program spustit odkudkoli v systému a spustitelný soubor programu zůstane v původní složce programu.

Odkazy jsou nezbytnou součástí Linuxu. Najdete je na mnoha místech ve vašich systémech. Stačí se podívat do /lib adresář a uvidíte spoustu měkkých odkazů.

Co dál?

Vřele doporučuji přečíst si následující články, které se týkají konceptu odkazů v Linuxu:

  • Co jsou měkké odkazy?
  • Podrobné vysvětlení pevných odkazů
  • Nalezení nefunkčních symbolických odkazů
  • Koncept inode v Linuxu

Doufám, že jste se v tomto tutoriálu naučili efektivně používat příkaz ln. Otázky a návrhy jsou vždy vítány.


Linux
  1. Jak vytvořit alias a používat příkaz Alias ​​v Linuxu

  2. Jak vytvořit měkké a pevné odkazy v Linuxu

  3. Co jsou symbolické odkazy (Soft Links) a jak je vytvořit pod Linuxem

  1. Najděte soubory a adresáře v Linuxu pomocí příkazu find

  2. Jak vytvořit pevné a symbolické odkazy v Linuxu

  3. RHEL 7 – RHCSA Poznámky:Vytvářejte pevné a měkké vazby.

  1. Vysvětlení pevných odkazů a měkkých odkazů v Linuxu

  2. Co jsou měkké a pevné odkazy v systému souborů Linux

  3. Rozdíl mezi měkkými a pevnými odkazy v Linuxu