Existujú dva typy symbolických odkazov, tvrdé odkazy a mäkké odkazy. Príkaz ln je možné použiť na vytvorenie pevných aj mäkkých odkazov.
Pevné odkazy:
Toto je iba iný názov pre ten istý súbor. Môžete to tiež nazvať alias. Pevné odkazy majú rovnaké číslo inódu ako pôvodný súbor. Takže sa vlastne nijako nelíšia od pôvodného názvu súboru, ktorý má iný názov.
Pevné odkazy majú určité obmedzenia.
- Pre adresáre nie je možné vytvoriť tvrdé odkazy. Môže byť vytvorený iba pre súbory.
- Pevný odkaz na súbor uložený v súborovom systéme nemožno vytvoriť v inom súborovom systéme.
- Pevný odkaz uložený v oddiele nemožno vytvoriť v inom oddiele alebo úložnom zariadení.
Mäkké odkazy:
Mäkké odkazy v zásade prekonávajú obmedzenia pevných odkazov. Môžete vytvoriť mäkké odkazy na súbory a adresáre. Mäkké odkazy môžu smerovať na súbory a adresáre nachádzajúce sa v rôznych súborových systémoch. Mäkké odkazy môžu tiež smerovať na súbory a adresáre umiestnené v rôznych oddieloch a na rôznych úložných zariadeniach, dokonca aj v sieťových pripojeniach.
Na rozdiel od pevných odkazov, mäkké odkazy majú svoje vlastné čísla inód. Sú to teda iné súbory alebo adresáre ako pôvodné súbory alebo adresáre.
Nevýhodou mäkkých odkazov je, že ak je pôvodný súbor alebo adresár premenovaný, presunutý alebo odstránený, odkaz je nefunkčný. V takom prípade budete musieť odkaz znova vytvoriť manuálne.
Príkaz ln je predvolene k dispozícii v každej distribúcii Linuxu. Nemusíte ho teda inštalovať osobitne.
V tomto článku vám ukážem, ako používať príkaz ln Linux na vytváranie mäkkých a tvrdých symbolických odkazov. Ukážem vám tiež, ako spravovať mäkké a tvrdé symbolické odkazy vytvorené pomocou príkazu ln. Takže poďme na to.
Vytvorenie a odstránenie pevného symbolického odkazu:
Ak chcete vytvoriť pevný odkaz na súbor (povedzme test.TXT), spustite nasledujúci príkaz:
$ ln test.txt test_hl.TXT
POZNÁMKA: Tu, test_hl.TXT je pevný odkaz na súbor test.TXT.
Teraz, ak skontrolujete číslo inode (33577665 v mojom prípade) súborov test.TXT a test_hl.TXT, zistíte, že oba súbory majú rovnaké čísla inód. Toto sa očakáva, pretože sme vytvorili pevný odkaz na súbor test.TXT. Takže odkaz test_hl.TXT má tiež rovnaké číslo inodu ako test.TXT spis.
$ ls -li
Číslo 2 tu sa podobá celkovému počtu súborov s rovnakým počtom inód. V našom prípade máme 2 súbory s rovnakým číslom inódu.
Ak chcete, môžete pevný odkaz umiestniť do iného adresára nasledovne:
$ ln test.txt / dir1 / dir2 / test_hl.TXTAk chcete odstrániť pevný odkaz test_hl.TXT, spustite nasledujúci príkaz:
$ unlink test_hl.TXT
Ako vidíte, test_hl.TXT pevný odkaz už nie je uvedený.
Vytváranie a odstraňovanie mäkkých odkazov:
Ak chcete vytvoriť mäkký odkaz na súbor test.TXT, spustite nasledujúci príkaz:
$ ln -s test.txt test_sl.TXT
Ako vidíte, mäkký odkaz test_sl.TXT skúšky súboru.txt je vytvorený. V zozname ls používa mäkký odkaz -> podpísať, aby sa zobrazil odkaz na pôvodný súbor. Upozorňujeme tiež, že čísla inodov pôvodného súboru test.TXT (33577665) a mäkký odkaz test_sl.TXT (33577676) je iný.
Môžete tiež vytvoriť mäkké odkazy v adresároch.
Napríklad na vytvorenie mäkkého odkazu v adresári /atď, spustite príkaz ln takto:
$ ln -s / etc config
Ako vidíte, mäkký odkaz konfigur adresára /atď je vytvorený.
Mäkký odkaz na súbor alebo adresár môžete umiestniť aj do iného adresára. Za týmto účelom spustite príkaz ln takto:
$ ln -s test.txt / dir1 / dir2 / test_sl.TXTAlebo
$ ln -s test_dir / dir1 / dir2 / test_dir_slSoftvérový odkaz test_sl môžete odstrániť.txt nasledovne:
$ unlink test_sl.TXT
Aktualizácia mäkkých odkazov:
Niekedy môžete skončiť odstránením pôvodného súboru alebo adresára bez odstránenia mäkkého odkazu. Mäkký odkaz tak zostane nefunkčný. Alebo ste omylom vytvorili mäkký odkaz na nesprávny súbor alebo adresár.
V obidvoch prípadoch môžete mäkký odkaz ľahko aktualizovať pomocou -f možnosť príkazu ln.
Povedzme, že chcete aktualizovať mäkký odkaz test_sl.TXT a prepojiť ho s novým súborom Ahoj.TXT.
Vykonáte to nasledujúcim príkazom:
$ ln -sf ahoj.txt test_sl.TXTAko vidíte, mäkký odkaz je aktualizovaný.
Rovnakým spôsobom môžete aktualizovať softvérové odkazy na adresár alebo súbory v inom adresári.
Takto teda používate príkaz ln Linux na vytváranie mäkkých a tvrdých symbolických odkazov. Ďakujeme, že ste si prečítali tento článok.