开发者

How do you make symbolic links work with a remote mount?

开发者 https://www.devze.com 2023-02-01 06:36 出处:网络
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

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 mo开发者_如何学JAVAunting /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


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


The link correctly points to /alpha/foo, but that doesn't exist on your machine. If you mount /alpha, the link will work.


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


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.


You will need to mount /alpha in your machine in order to have the link to work.


sounds like what you really want is a hard link. its another pointer to the same data in the filesystem, so to really delete that file and free up that disk space, you have to delete all hard links to it.

some scripts and tools can get confused by them.

0

精彩评论

暂无评论...
验证码 换一张
取 消