Thursday Feb 03, 2022

Rozdíl mezi tvrdým a měkkým odkazem

Odkazy v Unixu jsou v podstatě ukazatele, které se vážou k souborům a adresářům. Hlavní rozdíl mezi tvrdým a měkkým odkazem spočívá v tom, že tvrdý odkaz je přímý odkaz na soubor, zatímco měkký odkaz je odkaz podle názvu, což znamená, že ukazuje na soubor podle názvu souboru.

Tvrdý odkaz spojuje soubory a adresáře ve stejném souborovém systému, ale měkký odkaz může překračovat hranice souborového systému.

Před pochopením odkazů bychom měli nejprve porozumět inodu, inod je datová struktura složená z metadat o souboru, jako je datum vytvoření souboru, oprávnění k souboru, vlastník souboru a další.

Obsah: Hard link Vs Soft link

  1. Srovnávací tabulka
  2. Definice
  3. Klíčové rozdíly
  4. Závěr

Srovnávací tabulka

.

.

Podklad pro srovnání Tvrdý odkaz Měkký odkaz
Základní Soubor může být přístupný prostřednictvím mnoha různých názvů známých jako tvrdé odkazy. Soubor může být přístupný prostřednictvím různých odkazů ukazujících na tento soubor známý jako měkký odkaz.
Ověření platnosti odkazu, když je původní soubor smazán Stále platí a soubor je přístupný. Neplatný
Příkaz použitý pro vytvoření ln ln -.s
číslo uzlu Stejný Různý
Může být propojen s vlastním oddílem. Na jakýkoli jiný souborový systém, i síťový.
Spotřeba paměti Méně Více
Relativní cesta Není použitelné Povoleno

Definice tvrdého propojení

Tvrdé propojení přímo spojuje dva soubory ve stejném souborovém systému a pro identifikaci používá číslo inodu souboru. Tvrdé odkazy nelze implementovat na adresáře (protože ukazují na inode). Pokud je k vytvoření tvrdého odkazu použit příkaz „ln“, vytvoří na příkazovém řádku další soubor, který lze použít k odkazu na původní soubor. Původní i vygenerovaný soubor mají stejný inode i obsah; budou mít tedy stejná práva a stejného vlastníka.

Odstranění původního souboru nemá na soubor s tvrdým odkazem vliv a soubor s tvrdým odkazem zůstane zachován. V inodu je uloženo počítadlo, aby bylo možné vypočítat počet pevných odkazů na sebe sama. Když čítač ukazuje hodnotu 0, pak je inode vyprázdněn. Kdykoli provedete jakoukoli změnu v pevném odkazu, napodobí se v původním souboru.

Definice měkkého odkazu

Měkké odkazy jsou obvykle alternativní cestou (nebo aliasem) pro původní soubor; označují se také jako symbolické odkazy. Obsahuje název „cílového souboru“ odkazu, příznak, který určuje, že se jedná o měkký odkaz. Při přístupu k souboru jej měkký odkaz přesměruje na cílový soubor prostřednictvím cesty zapsané v předmětu měkkého odkazu.

Tyto funkce jsou velmi užitečné v případě OS Windows, kde se měkký odkaz chová jako zástupce. Vytváření a mazání softwarových odkazů nemá vliv na původní soubor. Pokud je cílový soubor odstraněn, softlink visí, což znamená, že neodkazuje nikam a při přístupu k cílovému souboru generuje chybové hlášení. Na rozdíl od pevného odkazu nepoužívají měkké odkazy číslo inodu. Součástí symbolických odkazů může být absolutní nebo relativní cesta.

Klíčové rozdíly mezi tvrdým a měkkým odkazem

  1. Tvrdý odkaz je dodatečný název původního souboru, který odkazuje na inode pro přístup k cílovému souboru. Naproti tomu měkký odkaz je odlišný od původního souboru a je aliasem původního souboru, ale nepoužívá inode.
  2. Při smazání původního souboru se měkký odkaz stane neplatným, zatímco tvrdý odkaz je platný, i když je cílový soubor smazán.
  3. V systému Linux se pro vytvoření tvrdého odkazu používá příkaz „ln“. Oproti tomu příkaz používaný pro měkký odkaz je „ln -s“.
  4. Tvrdý odkaz má stejné číslo inodu na rozdíl od měkkého odkazu, kde cílový soubor a jeho měkký odkaz mají odlišné číslo inodu.
  5. Tvrdé odkazy jsou omezeny na vlastní oddíly, ale měkké odkazy mohou pokrývat různé souborové systémy.
  6. Výkon tvrdého odkazu je v některých případech lepší než měkkého odkazu.
  7. Relativní cesta i absolutní cesta jsou u měkkých odkazů povoleny. Naopak relativní cesta není v tvrdém odkazu povolena.

Závěr

Tvrdý odkaz nevyžaduje další místo a mat řeší rychleji, ale změny aplikované na tvrdý odkaz se promítají do původního souboru. Naproti tomu měkký odkaz potřebuje místo navíc, ale jakákoli změna v měkkém odkazu se neprojeví v původním souboru. Měkké odkazy jsou na rozdíl od tvrdých odkazů povoleny do adresářů.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.

Back to Top