A különbség a kemény link és a szimbolikus link között.

A kemény linkek és a szimbolikus hivatkozások közötti különbséget itt magyarázzuk el:

A szimbolikus hivatkozás minden olyan fájlra használt kifejezés, amely egy másik fájlra vagy könyvtárra hivatkozást tartalmaz abszolút vagy relatív elérési út formájában. A szimbolikus hivatkozáson keresztül végzett bármilyen változtatás hatással lesz az eredeti fájlra, azonban ha a szimbolikus hivatkozás törlődik az eredeti fájl még maradnak.

A merev hivatkozások kevesebb lemezterületet foglalhatnak el, mivel csak egy könyvtárbejegyzést foglalnak el, és ugyanazt az inode-ot osztják meg, mint az eredeti fájl, míg a szimbolikus hivatkozásnak saját inode-ra van szüksége a név tárolásához, amelyre mutat.

Ha egy merev hivatkozás törlődik, az a fájlt is törölheti, ha nem mutatnak más merev hivatkozások arra a fájlra.

Íme egy példa a szimbolikus hivatkozások és a kemény hivatkozások létrehozására:

Először hozzon létre egy fájlt:

$ echo 'Hello, World!' > myfile.txt

Hozzon létre egy merev hivatkozást hard-link a myfile.txt fájlhoz, ami azt jelenti, hogy "hozzon létre egy fájlt, amely ugyanarra az inode-ra mutat, amelyre a myfile.txt mutat, használja az ln parancsot:

$ ln myfile.txt hard-link

Lágy hivatkozás létrehozása soft-link a myfile.txt fájlhoz, ami más szóval a fájlra mutatómyfile.txt fájl létrehozását jelenti, ehhez az ln -s parancsot kell használni:

$ ln -s myfile.txt my-soft-link

Nézze meg, mi történik most, ha a myfile.txt fájlt töröljük vagy áthelyezzük: a hard-link továbbra is ugyanarra a fájlra mutat, és a későbbiekben nem érinti, míg a soft-link most a semmire mutat.

Remélem, megtanultad, hogyan működnek a kemény és szimbolikus linkek, és hogyan hozhatod létre őket.