Termín propojení v Linuxu je definován jako vytvoření cesty k souboru nebo URL umístění souboru ve vašem souborovém systému. V Linuxu existují dva typy propojení, měkké odkazy a pevné odkazy. Pojem měkkých odkazů je velmi běžný a snadno pochopitelný. Pokud jste obeznámeni se souborem zástupce systému Windows, mysleli byste si měkký odkaz jako zástupce konkrétního souboru. Soft odkazy nenesou celý soubor, ale obsahují pouze název souboru nebo podrobnosti o souboru. Nese pouze indexový uzel (inode) souboru pro vytvoření interního propojení s tímto souborem v souborovém systému.
Pevné a měkké odkazy v systému Linux
Pevný odkaz je odkaz nebo cesta k původnímu souboru se skutečnou velikostí. Na druhou stranu, soft odkaz pouze vytvoří zástupce URL nebo cestu pro soubor nebo složku v systému. V tomto příspěvku uvidíme podrobné vysvětlení měkkých a pevných odkazů a toho, jak propojení funguje na Linuxu.
1. Soft and Hard Link with Inode
V Linuxu a operačních systémech podobných Unixu měkký odkaz označuje odkaz na původní soubor. Pokud má váš soubor jedinečné číslo indexu, můžete pro tento původní soubor vytvořit více softwarových odkazů a každý měkký odkaz bude odkazovat na hlavní soubor.
Ve většině případů se měkké odkazy také nazývají symbolické odkazy. Vytvoření měkkého odkazu na soubor je snadné pomocí příkazového shellu terminálu. Níže uvedený příkaz vás provede vytvořením měkkého odkazu.
$ ln -s targetFile SourceFiles
Tyto měkké odkazy se často používají k odkazování na soubory uvnitř příkazu nebo k označení uzlu uvnitř příkazu. Při správě serveru se místo původních cest často používají měkké a pevné odkazy.
Pevný odkaz je trochu složitý na pochopení a použití. Jak jsem řekl dříve, je to jiný název pro soubor, který obsahuje metadata a původní číslo indexu. Pevný odkaz můžeme umístit do libovolného adresáře. Pomocí níže uvedeného příkazu terminálu můžeme vytvořit pevný odkaz na soubor.
$ ln hard_link_target hard_link_output
Když už mluvíme o propojení na Linuxu, pomocí pokročilého příkazu ln se můžeme podívat na to, kolik čísel indexových uzlů je propojeno se souborem a detaily uživatele. V pevném propojení počet indexových čísel také udává celkový počet pevných odkazů daného souboru.
Zajímavým faktem o pevných odkazech je, že pokud smažete původní soubor, pevný odkaz v souborovém systému stále zůstane. Jediným způsobem, jak smazat soubor v Linuxu, je zajistit, aby před smazáním souboru existovalo pouze jedno číslo inodu tohoto souboru.
Smazáním měkkých i pevných odkazů neodstraníte původní soubor ze souborového systému Linux. V některých případech může číslo inodu pomoci obnovit omylem smazané soubory v Linuxu.
2. Fakta o pevných a měkkých odkazech v Linuxu
V tomto kroku uvidíme některá fakta a pracovní metody měkkých a pevných odkazů na Linuxu. Pochopení pojmu propojení v Linuxu vám může pomoci lépe vytvářet odkazy.
- Soft odkazy nebo symbolické adresy URL jsou zkratky souboru v systému Linux.
- Pokud původní soubor přesunete nebo odstraníte, cesta pro měkký odkaz nebude fungovat správně.
- K zobrazení symbolických odkazů můžete použít příkaz ls -l.
- Softlinks můžete použít ke spouštění příkazů, odkazování na adresář nebo použití uvnitř skriptu.
- Když po vytvoření softwarového odkazu na soubor změníte název tohoto souboru, budete muset aktualizovat také název softwarového odkazu. V opačném případě nebude měkký odkaz fungovat.
- Softlinks se většinou používají k propojení souborů a adresářů v systému.
Jak jsme viděli několik faktů o symbolických odkazech, existuje několik faktů o pevných odkazech, které možná budete potřebovat vědět.
- Stejně jako měkké odkazy můžete použít příkaz ls -l k zobrazení seznamu pevných odkazů v systému.
- Na rozdíl od měkkých odkazů mají pevné odkazy stejný původní soubor. Pokud některý z nich odstraníte, zbytek bude fungovat.
- Smazání pevných odkazů neovlivní hlavní soubor ve vašem souborovém systému Linux.
- Velikost pevného odkazu je obvykle stejná jako velikost hlavního souboru.
- Můžete vytvořit pevné odkazy pro soubory, ale nemůžete vytvořit pevné odkazy pro adresáře v Linuxu a OS typu Unix.
- Hodnota indexového uzlu původního souboru a indexového uzlu pevného odkazu jsou vždy stejné a také odkazují na stejný soubor v souborovém systému.
3. Výhody a nevýhody měkkých a pevných odkazů
Ve výše zmíněných bodech jsme viděli funkce, metodologii práce a vlastnosti toho, jak fungují pevné a měkké odkazy v systému Linux. Zde se chystáme objevit výhody a nevýhody těchto dvou souborových systémů.
Hlavní výhody měkkého odkazu nebo symbolického odkazu jsou, že můžete vytvořit měkký odkaz bez námahy a nezabere to velké množství velikosti nebo bloku na disku. A kromě toho nám měkký odkaz také umožňuje vytvářet symbolické odkazy pro libovolné soubory a adresáře.
Výhodou pevného odkazu je, že soubor i pevný odkaz používají stejný indexový uzel a zabírají stejné množství místa v systému, takže v takovém případě ve skutečnosti uchováváme oba soubory v systému souborů. Pokud tedy omylem nebo úmyslně odstraníte nebo smažete hlavní soubor, pevný odkaz bude stále spustitelný.
Nyní, když se podíváme na nevýhody měkkého a pevného odkazu, vidíme, že oba mají určitá omezení. Pokud u měkkých odkazů odstraníte, přejmenujete nebo smažete hlavní soubor, soft odkaz již nebude fungovat.
4. Co by se stalo, kdybychom smazali hlavní soubor
Možná jste přemýšleli o tom, co se stane, když dobrovolně nebo omylem smažeme hlavní soubor; budou pevné a měkké odkazy stále funkční? Zde jsme vytvořili měkký odkaz pro cílovou složku. Pokud nyní odstraníme hlavní cílový adresář, systém navrhne odstranění softwarového odkazu z koše při příštím spuštění tohoto softwarového odkazu.
Použili jsme níže uvedený příkaz k vytvoření měkkého odkazu na „cílový“ soubor. Nyní smažeme hlavní soubor a uvidíme, jak to ovlivní symbolický odkaz.
ln -s target softlink
A u pevných odkazů je jedinou nevýhodou, že nemůžete vytvořit pevný odkaz pro žádný adresář na vašem systému Linux. Navíc vám také neumožňuje vytvářet pevné odkazy pro různé systémy souborů.
Poslední slova
V celém příspěvku jsme viděli podrobné vysvětlení toho, jak fungují měkké a tvrdé odkazy na Linuxu. V případě, že máte v úmyslu vytvořit pevný odkaz na adresář, mějte na paměti, že na moderních počítačích je téměř nemožné vytvořit pevný odkaz na adresáře. Můžete však vytvořit měkké odkazy na adresáře.
Doufám, že tento příspěvek byl pro vás užitečný; pokud ano, sdílejte prosím tento příspěvek se svými přáteli a linuxovou komunitou. Můžete nám také dát vědět, které propojení považujete za nejužitečnější nebo které jste ve svém systému nejčastěji používali.