Kemény kapcsolatok és kereszteződések
Az NTFS fájlrendszer három fájlkapcsolattípust támogat: kemény csatolásokat, csomópontokat és szimbolikus hivatkozásokat. Ez a cikk a kemény kapcsolatok és a kereszteződések áttekintését ismerteti. A szimbolikus hivatkozásokról további információt Szimbolikus hivatkozások létrehozásacímű témakörben talál.
A hard link egy fájl fájlrendszerbeli ábrázolása, amellyel egynél több elérési út hivatkozik egyetlen fájlra ugyanabban a kötetben. Kemény hivatkozás létrehozásához használja a CreateHardLinkA függvényt.
A csatolt fájlokon végzett módosítások azonnal láthatók azokat az alkalmazásokat, amelyek az arra hivatkozó hivatkozásokon keresztül férnek hozzá. A fájl attribútumai megjelennek az adott fájlra mutató minden kemény hivatkozásban, és a fájl attribútumainak módosításai az összes kemény hivatkozásra propagálásra kerülnek. A fájl könyvtárbejegyzésének mérete és attribútumadatai azonban láthatóan csak azon a hivatkozáson frissülnek, amelyen keresztül a módosítás történt. Ha például törli az írásvédett attribútum jelzőjét egy adott kemény hivatkozáson, így törölheti a kemény hivatkozást, és több kemény hivatkozás is van a fájlra, a többi kemény hivatkozás azt mutatja, hogy az írásvédett attribútum továbbra is be van állítva, ami nem igaz. Ha vissza szeretné állítani a fájlt írásvédett állapotra, a fájl írásvédett jelzőjét az egyik fennmaradó kemény hivatkozásból kell beállítania.
Például egy olyan rendszerben, ahol a C:
és a D:
helyi meghajtók, és Z:
egy \\fred\share
csatlakoztatott hálózati meghajtó, a következő hivatkozásokat lehet szigorú hivatkozásként megadni:
-
C:\dira\ethel.txt
C:\dirb\dirc\lucy.txt
-
D:\dir1\tinker.txt
D:\dir2\dirx\bell.txt
-
C:\diry\bob.bak
C:\dir2\mina.txt
Ennek az az oka, hogy az összes hivatkozás ugyanazon a köteten található fájl. A kemény hivatkozások nem hivatkozhatnak könyvtárakra, csak fájlokra, és nem hivatkozhatnak a különböző köteteken lévő fájlokra.
A következő hivatkozások nem engedélyezettek:
-
C:\dira
C:\dirb
-
C:\dira\ethel.txt
D:\dirb\lucy.txt
-
C:\dira\ethel.txt
Z:\dirb\lucy.txt
Kemény hivatkozás törléséhez használja a DeleteFileA függvényt. A kemény hivatkozásokat bármilyen sorrendben törölheti, függetlenül attól, hogy milyen sorrendben lettek létrehozva.
A elágazási (más néven helyreállítható kapcsolat) abban különbözik a kemény kapcsolattól, hogy a hivatkozott tárolóobjektumok külön könyvtárak. A csomópontok összekapcsolhatják az ugyanazon a számítógépen található különböző helyi köteteken található könyvtárakat is. Ellenkező esetben a kereszteződések ugyanúgy működnek, mint a kemény kapcsolatok. A csomópontok újraelemzési pontokon.
Feltételezve, hogy a Kemény csatolások szakaszban ugyanazok a feltételek teljesülnek, a következő hivatkozások engedélyezettek csomópontként:
-
C:\dira
C:\dirb\dirc
-
C:\dirx
D:\diry
A következő hivatkozások nem engedélyezettek, mert leképezett hálózati kötetekre hivatkoznak, vagy közvetlenül hivatkoznak fájlokra:
-
C:\dira\one.txt
C:\dirb\two.txt
-
C:\dir1
Z:\dir2