Я сталкиваюсь со следующим сценарием:

Я монтирую папку на /data с host1 .

Эта папка имеет подкаталог: /data/internal/config .

Я хочу переопределить путь монтирования этого каталога, который будет взят из host2 .

Я использую NFSv4 это возможно?

Мотивация: я монтирую /data на многие машины, поэтому каждая из них должна получить папку /config с удаленного хоста, папка /config довольно тяжелая, что приводит к серьезной нагрузке на систему (размер каталога * число машин). Я хочу смонтировать эту папку в более близкое расположение и переопределить монтирование всех машин в это более близкое расположение, чтобы уменьшить нагрузку на сеть.

1 ответ1

0

После того, как вы смонтируете /data с host1 , вы можете смонтировать что-то еще через /data/internal/config (даже если этот каталог на host1 не пуст):

mount -t nfs host2:/foo/bar/config /data/internal/config

Два вопроса:

  1. Вам необходимо смонтировать config после монтирования data . Вы должны размонтировать config перед размонтированием data . Используйте этот подход или правильно настройте зависимости модулей systemd (если применимо).
  2. Вам необходимо запустить / настроить это дополнительное монтирование на каждой машине.

Первый вопрос можно обойти. Вместо монтирования из host2 в /data/internal/config , монтируйте в пустой каталог, который наверняка существует локально (просто создайте его), пусть он будет /mnt/config . Затем подготовьте правильную символическую ссылку на host1:

mv /whatever_the_share_is/internal/config /elsewhere  # just to free the name 'config'
ln -s /mnt/config /whatever_the_share_is/internal/config

Эта символическая ссылка может быть повреждена на host1 (или не может; вам следует знать, нужна ли там эта конфигурация для host1 ; поместите конфигурацию в /mnt/config на host1 или смонтируйте ее с host2 если это проблема, поэтому символическая ссылка действительна),

На каждой машине, которая монтирует общий ресурс, символическая ссылка будет разрешена локально. Он будет указывать на локальный /mnt/config который либо уже смонтирован с host2 либо будет смонтирован в конце концов. Теперь последовательность монтажа не имеет значения.


Второй вопрос остается. Возможно, вы ожидали, что вы можете перенастроить только host1 для перенаправления всех монтирующих машин, поэтому они получают config непосредственно с host2 . Я не думаю, что это возможно (но я буду одобрять любое здравомыслящее решение, которое доказывает, что я не прав).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .