18

From a high-level standpoint (meaning only worrying about the results and the interface, not the implementation), what is the difference in behavior, if any, between an NTFS reparse point that points to a directory and a symbolic link that points to the same directory?

Are they resolved at the same level in the stack, or is it possible for one to be unresolvable at a certain time when the other one can be resolved (e.g. at boot)?

(I'm aware that symbolic links can also work for files, but I'm asking about the directory difference here.)

user541686
  • 205,094
  • 128
  • 528
  • 886
  • Take a look at this SuperUser thread: [“directory junction” vs “directory symbolic link”?](https://superuser.com/q/343074) – aschipfl Mar 12 '21 at 00:01

1 Answers1

13

It is known that in network symbolic links are resolved on clients, while junctions are resolved by server. One can suggest, that junctions are more "invisible" for users.

qqq
  • 154
  • 1
  • 2
  • Oh interesting... so junctions are more low-level. Thanks for the info! – user541686 Apr 04 '11 at 00:34
  • 2
    From Windows Vista onwards Symbolic link replaces Junctions (also, as we know, both are reparse points) – Aravind Jun 04 '13 at 07:39
  • @Aravind uhm no, they don't replace anything, since Junction Points can be created without particular privileges, they are local-only and so on. For most of the stuff for which I would create a reparse point, it'll be a Junction Point out of simplicity and for the aforementioned (and some other) properties. – 0xC0000022L Oct 22 '18 at 12:09
  • The point made in this answer is critical: it's not just a matter of whether its "high" or "low" level. Suppose there is a reparse point on a network share, and suppose that re-parse point "points" to C:\temp. If the re-parse point is a junction, it is processed on the target machine, so we get "C:\temp" from the server. If the re-parse point is a symbolic link, it is processed on the client side, so we get "C:\temp" on the client machine. Completely different behaviour, and sometimes you might want one, or sometimes you might want the other, so one definitely does NOT replace the other. – David I. McIntosh Feb 05 '19 at 18:42