Amikor Linuxot használ, a Symbolic Link szót hallja

Tehát mi ez a szimbolikus link?

A szimbolikus hivatkozás egy olyan fájl, amely egy másik fájlra vagy mappára (könyvtárra) mutat Linux rendszeren. Hasonló a WindowsOS parancsikonjához.

A Symbolic Link rövidítése symlink, és más néven Soft Link, a hivatkozások egyik típusa Linuxon vagy Unixon.

Csakúgy, mint a Soft Link név, létezik egy Hard Link is. A Hard Link szintén hasonló a parancsikonhoz, de különbözik a Soft Linktől.

Nézzük meg a kettő közötti különbséget.

Hard Link

A Hard Link a kiválasztott fájl másolataként működik. Tehát még ha az eredeti fájl törlődik is, a fájlra mutató merev hivatkozás továbbra is tartalmazza az adott fájl adatait, így Ön hozzáférhet az adatokhoz.

Ha kemény hivatkozást hoz létre, annak ugyanaz az inode száma, mint az eredeti fájl, és nem engedélyezi a merev hivatkozást a könyvtárra (kivéve, hogy a szuperfelhasználó lehetséges).

Soft Link

A Soft Link mutatóként működik a fájlnévre. Ezért, ha az eredeti fájlt/könyvtárat törlik vagy áthelyezik, a Soft Link egy már nem létező fájlra/könyvtárra mutat, és működésképtelenné válik.

Ha létrehoz egy Soft Linket, annak egyinode száma különbözik az eredeti fájltól/könyvtártól, és a Hard Linkkel ellentétben a Soft Link könyvtárként is használható.

Inode szám: Egyedi szám, amely minden fájlhoz van hozzárendelve egy Linux/Unix rendszeren.

Hogyan lehet szimbolikus linket létrehozni?

ln -s (original file/directory path) (new link path to create)

Az „l” parancs önmagában való használata kemény hivatkozást hoz létre. Tehát ha Soft Linket szeretne létrehozni, adja hozzá az „-s” vagy „-symbolic” opciót.

Hogyan ellenőrizhető a symlink?

ls -l

Biztos vagyok benne, hogy minden nap használja az „ls” parancsot. Az „ls” parancs az aktuális helyen létező fájlok/könyvtárak listáját jeleníti meg.

Ha a „-l” opciót adjuk meg, akkor a bal szélen lévő tulajdonság kis L betűvel jelenik meg, a fájl/könyvtár szimbolikus hivatkozást jelent.

Azt a fájlt/könyvtárat, amelyre a symlink mutat, nyíl(-›) jelzi, így azt is láthatja, hogy melyik fájlra/könyvtárra mutat.

Hogyan lehet törölni a szimbolikus linket?

unlink (symlink path)

A fenti parancs használatakor vegye figyelembe, hogy a „/” jelzést még akkor sem szabad beillesztenie, ha az egy könyvtár szimbolikus hivatkozása.

Ha beszúrja a „/”-t, a Linux megérti, hogy ez egy könyvtár, nem pedig egy szimbolikus hivatkozás, és nem törölheti.

Az „rm” parancsot más módon is használhatja.

rm (symlink path)

Hasonlóképpen, ha az „rm”-t használja, a hibák elkerülése érdekében az „rm (könyvtár szimbolikus linkje)” helyett az „rm (könyvtár szimbolikus linkje)/” értéket kell használnia.

Hogyan lehet megtalálni a hibás linket?

Lágy hivatkozás esetén, ha az eredeti fájlt áthelyezik egy másik helyre vagy törlik, a szimbolikus hivatkozás nem fog megfelelően működni. Szóval hogyan találhatom meg ezt a hibás linket?

A megoldás egyszerű. Használja a „keres” parancsot.

find (original file/directory path) -type l -exec file {} \; | grep ‘broken symbolic link’

Ha így írja be a parancsot, akkor ellenőrizheti, hogy nincsenek-e hibás szimbólumhivatkozások.