Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I have a shared folder, let's call it

e:\folder2\

'Everyone' has read permission to the share and file system.

From a command line, with pwd at

e:\folder2\

I ran

mklink /D slF1 e:\folder1

The permissions for both folders(folder1,folder2) are identical (Everyone has read access for network access and file system access)

When I try to open

\\thismachine\folder2\slF1\

I get an accessibility error.

Can this even work? If so what's the trick?

EDIT: If I share the symlink slF1 directly, it works -- that is, I can share \thismachine\slF1\

EDIT II: I tried what sysadmin1138 suggested. I just couldn't get it to work unless I ran:

fsutil behavior set SymlinkEvaluation L2L:1 R2R:1 L2R:1 R2L:1

and then, I had to use junctions for directories and hardlinks for files. This is a bit weird. Am I missing anything? I'll accept your answer tomorrow morning. Thanks!

share|improve this question

1 Answer 1

up vote 1 down vote accepted

The target of the Symlink needs to be able to be accessible by readers. In your case...

E:\
|- Folder1\
|- [share]Folder2\
      |- slF1

If 'slF1' points to "E:\Folder1\" clients will not be able to access it. In fact, if you'd done this:

E:\
|- Folder1\
|- [share]Folder2\
      |- Folder3\
      |- slF3

And made "slF3" a link to "E:\Folder1\Folder3" it STILL wouldn't work since Clients don't know how to access "E:\". However if you had made "slF3" a link to "\\Server\Share\Folder3" it would work just fine. To make it work the way you want it to work:

E:\
|- [F1Share]Folder1\
|- [F2share]Folder2\
      |- slF1

Made "slF1" a link to \\server\F1Share\ and it should work just like you need to.

mklink /D slF1 \\Server\F1Share\

The thing to keep in mind is that a symbolic link is a path that is followed explicitly by clients, as if it were a Shortcut icon. What you link to will be what clients attempt to attach to. Shares do not derefence links before serving them up, clients have to support them. That might be a problem with older clients that can't handle junctions.

The reason sharing it directly works is because Windows is actually sharing E:\Folder1 in that instance, and the symlink is never touched by clients.

share|improve this answer
    
Thanks sysadmin1138! Info helped me a bit -- see EDIT II –  Matt Sep 15 '10 at 5:11

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.