Ajánlott, 2024

Szerkesztő Választása

A hard link és a Soft link közötti különbség

A Unixban található linkek lényegében azok a mutatók, amelyek a fájlokhoz és könyvtárakhoz kapcsolódnak. A kemény kapcsolat és a lágy kapcsolat között az a legnagyobb különbség, hogy a kemény link a közvetlen hivatkozás a fájlra, míg a lágy hivatkozás a név szerinti hivatkozás, ami azt jelenti, hogy a fájl egy fájlnévre mutat.

A kemény link a fájlokat és könyvtárakat ugyanarra a fájlrendszerre kapcsolja, de a Soft link átmásolhatja a fájlrendszer határait.

A linkek megértése előtt először meg kell értenünk az inode-ot, az inode egy olyan adatszerkezet, amely a fájl metaadataiból áll, mint például a fájl létrehozásának dátuma, a fájlengedélyek, a fájl tulajdonosa és így tovább.

Összehasonlító táblázat

Az összehasonlítás alapjaKemény kapcsolat
Lágy kapcsolat
AlapvetőA fájl számos különböző nevet érhet el, amelyeket kemény kapcsolatoknak neveznek.A fájl különböző hivatkozásokon keresztül érhető el, amelyek arra utalnak, hogy a fájl lágy linkként ismert.
Link validálás, ha az eredeti fájlt törliMég mindig érvényes és a fájl elérhető.
Érvénytelen
A teremtéshez használt parancsln
ln -s
inode számAzonos
Különböző
KapcsolhatóSaját partíciójához.Bármely más fájlrendszerhez még hálózatba is kapcsolható.
MemóriafelhasználásKevésbéTöbb
Relatív útNem alkalmazhatóEngedélyezett

A kemény kapcsolat meghatározása

A kemény linkek közvetlenül összekapcsolják a két fájlt ugyanabban a fájlrendszerben, és azonosításhoz a fájl inode számát használja. A kemény hivatkozásokat nem lehet a könyvtárakon végrehajtani (mivel az inode-ra mutat). Amikor az „ ln ” parancsot használják egy kemény hivatkozás létrehozására, akkor létrehoz egy másik fájlt a parancssorból, amely az eredeti fájl hivatkozására használható. Mind az eredeti, mind a létrehozott fájl ugyanolyan inode és tartalma van; így ugyanazok a jogosultságok és ugyanaz a tulajdonos lesz.

Az eredeti fájl eltávolítása nem befolyásolja a kemény összekapcsolt fájlt, és egy kemény összekapcsolt fájl marad. Az inode rendelkezik egy számlálóval, hogy kiszámolja a magához kötődő kemény linkek számát. Ha a számláló 0 értéket jelez, az inode kiürül. Ha módosítja a kemény linket, akkor az eredeti fájlban lesz.

A Soft link meghatározása

A lágy hivatkozások általában az eredeti fájl alternatív útvonala (vagy alias); ezeket szimbolikus linkeknek is nevezik. Tartalmazza a hivatkozás „célfájl” nevét, amely jelzi, hogy ez egy lágy hivatkozás. Amikor egy fájl elérése után a lágy hivatkozás átirányítja azt a célfájlra a lágy hivatkozás tárgyában írt útvonalon.

Ezek nagyon hasznosak a Windows operációs rendszer esetén, ahol a lágy hivatkozás parancsikonként viselkedik. A soft linkek létrehozása és törlése nem érinti az eredeti fájlt. Ha a célfájl törlésre kerül, akkor a lágy link lezáródik, ami azt jelenti, hogy sehol nem jelenik meg, és hibaüzenetet generál a célfájl elérésekor. A lágy hivatkozások nem használják a inode számot, a hard linkektől eltérően. Abszolút vagy relatív út lehet a szimbolikus kapcsolatok egy része.

A Hard link és a Soft link közötti különbségek

  1. A kemény hivatkozás az eredeti fájl egy további neve, amely inode-ra utal a célfájl elérésére. Ezzel ellentétben a lágy hivatkozás különbözik az eredeti fájltól, és az eredeti fájl álneve, de nem használja az inode-ot.
  2. Amikor egy eredeti fájl törlésre kerül, a soft link érvénytelenné válik, míg a kemény link akkor is érvényes, ha a célfájl törlődik.
  3. Linux alatt a kemény kapcsolat létrehozására használt parancs „ ln ”. Ezzel szemben a lágy hivatkozáshoz használt parancs „ ln -s ”.
  4. A kemény link ugyanolyan inode-számmal rendelkezik, mint a lágy link, ahol a célfájl és a lágy link különálló inode-számmal rendelkezik.
  5. A kemény linkek saját partícióira korlátozódnak, de a lágy linkek különböző fájlrendszereket is lefedhetnek.
  6. A kemény kapcsolat teljesítménye bizonyos esetekben jobb, mint a lágy kapcsolat.
  7. A relatív pálya és az abszolút útvonal egyaránt megengedett a soft linkekben. Éppen ellenkezőleg, a relatív útvonal nem engedélyezett egy kemény kapcsolatban.

Következtetés

A merev link nem igényel extra helyet, és gyorsabban oldja meg a szőnyeget, de a kemény linkre alkalmazott változtatások az eredeti fájlban tükröződnek. Másrészről, a Soft linknek több helyet kell igénybe vennie, de a soft link bármilyen változása nem befolyásolja az eredeti fájlt. A Soft linkek megengedik a könyvtárakat a Hard linktől eltérően.

Top