Да, черт возьми. При выполнении ln -s
вы создаете символическую ссылку, которая является индексом, указывающим на определенный объект файловой системы, поэтому символические ссылки могут проходить через файловые системы, а жесткие ссылки не могут: жесткие ссылки не имеют своего собственного индекса.
Если вы монтируете файловую систему с помощью --bind
, вы создаете вторую точку монтирования для устройства или файловой системы.
Если вы представляете символическую ссылку как перенаправление, то представляете --bind
смонтированную файловую систему как создание другого шлюза к данным.
Симлинки и привязные монтировки - это совершенно другая игра в мяч.
--bind
Крепление кажется немного более надежным для меня , и это , вероятно, немного быстрее , чем работы с линком. С другой стороны, нет никаких серьезных недостатков в использовании символической ссылки, так как снижение производительности будет небольшим (если оно вообще существует).
Изменить : я думал об этом, и хит производительности может быть немного больше, чем я первоначально думал. Если у вас есть приложение, которое читает много разных файлов, то каждый открытый файл требует дополнительного чтения. Некоторые исследования здесь говорят о том , что мое предположение верно, поэтому если у вас есть приложение тяжелых IO работает там, рассмотреть --bind
возможность монтировать над раствором SYMLINK.
Причина, по которой это не часто встречается, - это, вероятно, тот факт, что символическая ссылка видима в ls
, тогда как монтирование связывания видно только при просмотре / proc / mounts или / etc / mtab (что и делает команда mount, если она выполняется без параметров). Кроме этого, я не думаю, что есть какие-либо проблемы. Мне было бы интересно, если таковые имеются.
Дополнение : другая проблема ln -s
заключается в том, что для некоторых приложений, когда путь разыменовывается, это может привести к блокировке приложения, если оно «ожидает», что определенные элементы находятся в определенных местах.