/ etc / fstab не привязывает крепление на загрузке, но работает Mount -a работает правильно

Используйте shopt -q:

shopt -q extglob && echo enable || echo disable

-q опция make shopt отбрасывает вывод и возвращает статус, указывающий на то, что опции установлены или не установлены.

Обратите внимание, что shopt сообщает только опции, которые могут появиться в переменной BASHOPTS, эти опции не действительны для set встроенной команды.

Для проверки опций, которые действительны для set, или могут быть отображены в SHELLOPTS, используйте shopt -qo:

$ bash --posix -c 'shopt -qo posix && echo enable || echo disable'
enable

3
08.12.2018, 16:04
1 ответ

Если вы используете systemd, монтирование выполняется параллельно (путем динамического преобразования записей fstab в единицы монтирования ), порядок строк не сохраняется, как можно было бы ожидать от работы systemd до -.

У вас есть невыразимая зависимость, которая не угадывается автоматически :монтирование /data/перед монтированием /usr. Без этого вы получаете состояние гонки.

Вы должны вручную добавить зависимость как опцию псевдомонтирования, используяx-systemd.requires=. Итак, если предыдущая точка монтирования, которая должна быть смонтирована, /data, это должно заставить ее работать :

.
/data/rootfs/var    /var    none    x-systemd.requires=/data,bind    0    0
/data/rootfs/usr    /usr    none    x-systemd.requires=/data,bind    0    0

В случае, если кто-то еще найдет этот вопрос, но вариант использования для /dataудаленной сетевой файловой системы, такой как NFS, параметр псевдо-монтирования_netdev(pre -systemd, также распознаваемый systemd ), должен также добавить в запись /data/rootfs/usr, чтобы все работало нормально, потому что noneне может подсказывать это автоматически, и его отсутствие может привести к путанице с разрешением x-systemd.requires=.

8
27.01.2020, 21:17

Теги

Похожие вопросы