How do you make symbolic links work with a remote mount?
Solution 1
Soft links only contain a path to another file on the local machine. You cannot reference a file that is not accessible on the local filesystem(s).
Options:
- Don't use soft links, copy the file
- Cross-linking (almost always a bad idea)
- Reorganize/redo whatever imposes the file access requirement
Solution 2
The link correctly points to /alpha/foo
, but that doesn't exist on your machine. If you mount /alpha
, the link will work.
Solution 3
You might be able to use the sshfs utility to do what you want to do. This will let you mount a filesystem on a remote computer, on your local one. Here's a reference to how to do this: https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh
Solution 4
soft symbol link's content is a path string, it doesn't know anything about how you mount filesystems. In your case, you can mount /alpha and /beta on B with sample path of A. But strongly suggest don't cross link between network system, that's hard to maintain.
Dancrumb
CTO of Ahana Health Previously: Director of Product Engineering at Jellyvision. Product Engineering Manager at Vodori Various at IBM from 2002-2012, specialising in Storage (Disk and Tape).
Updated on December 19, 2020Comments
-
Dancrumb over 3 years
I have two servers, A and B
A has two filesystems, /alpha and /beta
I have a symbolic link:
ln -s /alpha/foo /beta/bar
Such that:
lrwxrwxrwx 1 root root 70 Dec 22 13:32 /beta/bar -> /alpha/foo
Next, I mount /beta, remotely on B via an NFS mount
The link no longer works.
Is there a way to achieve this. I'd like to be able to access A:/alpha/foo on server B, but I want to be able to do it via the /beta/bar symbolic link.
Do I need to modify my mount, or my link? Or am I trying to achieve the impossible?
UPDATE
I should have added: 'without mounting /alpha to server B'. In short, I would like the symbolic link to be followed to the actual file in question whenever server B accesses /beta/bar
-
mattgately almost 11 yearsYour answer doesn't relate to the user's question about linking between multiple file systems.
-
asoundmove almost 11 years@mattgately: yes it does. pixel did not express it very clearly, but the hard link is the absolute solution. Possibly not one the OP is ready to use for whatever (valid) reason, but definitely a valid solution to accessing the required file directly from /beta without having to mount /alpha.
-
mattgately over 10 yearsI could be mistaken, but I believe that the question is about files on two different file systems, so hard links are not even an option in this scenario.