Как заставить символические ссылки работать с удаленным монтированием? - PullRequest
20 голосов
/ 22 декабря 2010

У меня есть два сервера, A и B

A имеет две файловые системы, / alpha и / beta

У меня есть символическая ссылка:

ln -s /alpha/foo /beta/bar

такой, что:

lrwxrwxrwx 1 root    root           70 Dec 22 13:32 /beta/bar -> /alpha/foo

Далее я монтирую / beta удаленно на B через монтирование NFS

Ссылка больше не работает.

Есть ли способ достичь этого. Я хотел бы иметь возможность доступа к A: / alpha / foo на сервере B, но я хочу иметь возможность сделать это по символической ссылке / beta / bar.

Нужно ли мне изменить мое крепление или мою ссылку? Или я пытаюсь достичь невозможного?

UPDATE

Я должен был добавить: «без монтирования / альфа на сервер B». Короче говоря, я хотел бы, чтобы символическая ссылка шла на рассматриваемый файл фактический всякий раз, когда сервер B обращается к / beta / bar

Ответы [ 6 ]

19 голосов
/ 22 декабря 2010

Мягкие ссылки содержат только путь к другому файлу на локальной машине.Вы не можете ссылаться на файл, который недоступен в локальной файловой системе (ах).

Параметры:

  • Не используйте программные ссылки, скопируйте файл
  • Перекрестные ссылки (почти всегда плохая идея)
  • Реорганизация/ redo все, что налагает требование доступа к файлу
3 голосов
/ 22 декабря 2010

Ссылка правильно указывает на /alpha/foo, но ее нет на вашем компьютере.Если вы смонтируете /alpha, ссылка будет работать.

2 голосов
/ 18 декабря 2014

Вы можете использовать утилиту sshfs, чтобы делать то, что вы хотите. Это позволит вам смонтировать файловую систему на удаленном компьютере, на вашем локальном компьютере. Вот ссылка на то, как это сделать: https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh

1 голос
/ 22 декабря 2010

мягкая символьная ссылка - это строка пути, она ничего не знает о том, как монтировать файловые системы.В вашем случае вы можете смонтировать / alpha и / beta на B с образцом пути A. Но настоятельно рекомендуем не создавать перекрестные ссылки между сетевыми системами, это сложно поддерживать.

0 голосов
/ 17 февраля 2013

звучит так, как будто вы действительно хотите получить жесткую ссылку. это еще один указатель на те же данные в файловой системе, поэтому, чтобы действительно удалить этот файл и освободить это дисковое пространство, вы должны удалить все жесткие ссылки на него.

Некоторые скрипты и инструменты могут запутаться ими.

0 голосов
/ 22 декабря 2010

Вам нужно будет смонтировать /alpha на вашем компьютере, чтобы ссылка работала.

...