В моей ситуации мне нужно убедиться, что одна конкретная файловая система смонтирована до того, как должны быть смонтированы несколько последующих файловых систем. В этом случае, например, я хочу смонтировать USB-диск перед подключением к нему некоторых других каталогов.
Мне достаточно удобно написать сценарий инициализации для выполнения этой задачи, однако перед тем, как это сделать, я хотел бы знать, есть ли более разумное или распространенное решение этой проблемы - я скептически отношусь к тому, что эта проблема встречается редко.
Вы хотите, чтобы это происходило только при запуске системы? В противном случае вы могли бы что-то сделать с помощью automount, в соответствии со строками исполняемой карты, которая проверяет, доступно ли USB-устройство, и если да, делает зависимые места доступными для монтирования.
Что-то вроде:
auto.magic:
#/bin/sh
if [[ -z /media/usb ]] then
echo "films /media/usb/films"
echo "photos /media/usb/photos"
fi
auto.master:
/magic auto.magic
Вам нужно будет выполнить автозапуск (повторный) запуск службы.
Затем, когда вы выполните ls / magic / movies, automount вызовет ваш скрипт и смонтирует общий ресурс фильма, если / media / usb доступен.
Какой дистрибутив вы используете?
Я совершенно уверен, что либо сценарии инициализации монтируют файловые системы одну за другой сверху вниз в /etc/fstab
или ищите зависимости.
В любом случае у меня никогда не было проблем с точками монтирования, расположенными в других точках монтирования, и я широко их использую вместе с mount --bind
.
С другой стороны, когда точка монтирования не существует, mount
напечатает ошибку, и сценарии инициализации продолжатся (пока точка монтирования не критична, установив 0
в последнем столбце /etc/fstab
)