Thursday Feb 03, 2022

Különbség a Hard link és a Soft link között

A linkek a Unixban lényegében a mutatók, amelyek a fájlokhoz és könyvtárakhoz kapcsolódnak. A fő különbség a hard link és a soft link között az, hogy a hard link a fájlra való közvetlen hivatkozást jelenti, míg a soft link a név szerinti hivatkozást, ami azt jelenti, hogy egy fájlra a fájlnév alapján mutat.

A hard link az azonos fájlrendszerben lévő fájlokat és könyvtárakat köti össze, de a soft link képes áthaladni a fájlrendszer határain.

A linkek megértése előtt először az inode-ot kell megértenünk, az inode egy olyan adatstruktúra, amely a fájlra vonatkozó metaadatokból áll, mint például a fájl létrehozásának dátuma, a fájl jogosultságai, a fájl tulajdonosa és így tovább.

Tartalom: Hard link Vs Soft link

  1. Összehasonlító táblázat
  2. Definíció
  3. Főbb különbségek
  4. Következtetés

Összehasonlító táblázat

.

Az összehasonlítás alapja Kemény link Lágy link
Basic Egy fájlt több különböző néven, úgynevezett hard linkeken keresztül lehet elérni. Egy fájlt különböző, az adott fájlra mutató hivatkozásokon keresztül lehet elérni, ezt nevezzük lágy hivatkozásnak.
Link érvényesítés, ha az eredeti fájlt töröljük Még érvényes és a fájl elérhető. érvénytelen
A létrehozáshoz használt parancs ln ln -.s
inode number Same Different
Csatlakoztatható A saját partícióhoz. Minden más fájlrendszerhez, akár hálózaton keresztül is.
Memóriafogyasztás Kisebb Több
Relatív elérési útvonal Nem alkalmazható Megengedett

A Hard link definíciója

A hard linkek közvetlenül összekötnek két fájlt ugyanabban az állományrendszerben, és az azonosításhoz a fájl inode számát használja. A hard linkek nem implementálhatók könyvtárakra (mivel azok inode-ra mutatnak). Amikor az “ln” parancsot használjuk hard link létrehozására, az egy másik fájlt hoz létre a parancssorban, amely az eredeti fájlra való hivatkozásra használható. Mind az eredeti, mind a generált fájlnak ugyanaz az inode-ja és tartalma, ezért ugyanazokkal a jogosultságokkal és ugyanazzal a tulajdonossal rendelkeznek.

Az eredeti fájl eltávolítása nem befolyásolja a hardlinkelt fájlt, és egy hardlinkelt fájl marad. Az inode tartalmaz egy számlálót, hogy kiszámítsa a magára mutató hard linkek számát. Amikor a számláló 0 értéket mutat, akkor az inode kiürül. Bármikor, amikor bármilyen változtatást végez a hard linkben, az utánozni fog az eredeti fájlban.

A Soft link definíciója

A soft linkek általában az eredeti fájl alternatív elérési útvonalát (vagy aliasát) jelentik; ezeket szimbolikus linkeknek is nevezik. Tartalmazza a hivatkozás “célfájljának” nevét, jelzőt, amely meghatározza, hogy lágy hivatkozásról van szó. Amikor egy fájlt elérünk, a lágy link átirányítja azt a célfájlra a lágy link tárgyába írt elérési útvonalon keresztül.

Ezek nagyon hasznosak a windows operációs rendszer esetében, ahol a lágy link parancsikonként viselkedik. A lágy hivatkozások létrehozása és törlése nem érinti az eredeti fájlt. Ha a célfájlt törlik, a lágy link lóg, ami azt jelenti, hogy sehová sem mutat, és hibaüzenetet generál a célfájl elérésekor. A lágy hivatkozások nem használnak inode számot, ellentétben a kemény hivatkozással. A szimbolikus linkek része lehet egy abszolút vagy egy relatív elérési útvonal.

Főbb különbségek a hard link és a soft link között

  1. A hard link az eredeti fájl kiegészítő neve, amely a célfájl eléréséhez inode-ra hivatkozik. Ezzel szemben a lágy link különbözik az eredeti fájltól, és az eredeti fájl álneve, de nem használ inode-ot.
  2. Az eredeti fájl törlésekor a lágy link érvénytelenné válik, míg a kemény link akkor is érvényes, ha a célfájlt törlik.
  3. A Linuxban a kemény link létrehozására használt parancs az “ln”. Ezzel szemben a lágy link létrehozásához használt parancs az “ln -s”.
  4. A kemény linknek ugyanaz az inode száma, ellentétben a lágy linkkel, ahol a célfájlnak és a lágy linknek különböző inode száma van.
  5. A kemény linkek a saját partíciókra korlátozódnak, de a lágy linkek különböző fájlrendszerekre is kiterjedhetnek.
  6. A kemény link teljesítménye bizonyos esetekben jobb, mint a lágy linké.
  7. A lágy linkekben a relatív és abszolút elérési útvonal is megengedett. Ezzel szemben a relatív elérési útvonal nem megengedett a hard linkben.

Következtetés

A hard link nem igényel extra helyet és a mat gyorsabban oldódik fel, de a hard linkre alkalmazott változások az eredeti fájlban is tükröződnek. Másrészt a lágy linknek extra helyre van szüksége, de a lágy linkben végrehajtott bármilyen változás nem hat ki az eredeti fájlra. A soft linkek a hard linkkel ellentétben a könyvtárakra is engedélyezettek.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.

Back to Top