NFS Mounts + Symbolic Links

lnoelstorr

Registered
Hi, I've got some shared directories from my Linux box to automount in OSX so that they come up in the Networks->Servers folder (I used an NFS tool for OSX the name of which I cannot remember).

Anyway, it all works fine, except that I cannot follow symbolic links on the mounted shares.

Is this a problem at the Linux end or the OSX end? can it be sorted or is it something that will not be possible?


Cheers in advance for any help.
 
It all depends on the symbolic link, which comes down to what a symbolic link is. Basically (in very general terms) a symbolic link is a file, that holds the path name to another file. The filesystem itself will direct you to the file that is held in the symbolic link.

Code:
$ cd /tmp
$ ln -s foo foo2
$ ln -s /tmp/foo foo3
$ ln -s ../tmp/foo foo4
$ ls -la foo*
-rw-r--r--   1 btoneill staff         48 Dec 15 11:36 foo
lrwxrwxrwx   1 btoneill staff          3 Dec 15 11:37 foo2 -> foo
lrwxrwxrwx   1 btoneill staff          8 Dec 15 11:37 foo3 -> /tmp/foo
lrwxrwxrwx   1 btoneill staff         10 Dec 15 11:40 foo4 -> ../tmp/foo

Now, given the above example, if you shared /tmp out over the network, and mounted it as /Volume/tmp on your box, access to foo2 would work fine, but access to foo3 would not. When you try to access foo3, it is looking for the full path of /tmp/foo on your computer. foo4 would work, assuming you mounted the drive as tmp (/Volume/tmp). Basically, if the symlink is pointing to a relative path, it will work over NFS (assuming the path that it points to is also shared via NFS), if it's pointing to a full path, it will only work correctly if the exact same full path exists on the remote server.

Brian
 
Back
Top