эффективное ожидание загрузки NAS для его монтирования

эффективное ожидание загрузки NAS для его монтирования

Проблема: Сервер загружается 3 минуты, Raspberry Pi загружается 30 секунд. После отключения питания RPi загружается быстрее и не монтирует диск NAS.

Этому конкретному RPi нужен диск, чтобы иметь возможность записывать на него. Следовательно, без (внешнего) смонтированного диска RPi бесполезен. Я использовал RPi autostart.sh для:

mount -t nfs 192.168.1.5:/Public/Video/TV /storage/nas -o nolock;

когда я понял эту проблему. Поэтому я создал цикл в autostart.sh RPi, где я монтирую NAS. Во время нормальной работы (после монтирования) эта проблема больше не может возникнуть: если только один из них перезагрузится, монтирование RPi будет работать нормально (я думаю).

Будет ли это хорошим решением (выполняемым только при запуске RPi) и можно ли это сделать лучше или элегантнее?

until mountpoint -q /storage/nas || mount -t nfs 192.168.1.5:/Public/Video/TV /storage/nas -o nolock; do sleep 30; done

Это не должно пытаться монтироваться, если все уже смонтировано, и в противном случае - монтироваться. Плюс, ждать повторной попытки, пока не смонтируется. Кажется, работает как задумано, за исключением того, что RPi загрузится (не ЖДЕТ монтирования), но этот RPi (на самом деле Kodi) будет заморожен, пока NAS не будет смонтирован.

Единственное, что я могу здесь добавить, это: отправлять WOL на NAS перед переходом в спящий режим.

Пояснение: это установка OPENelec RPi, и fstab не используется, но используется метод, описанный выше.

решение1

Вы можете попробовать добавитьбгопция монтирования для nfs, если она у вас есть.человек 5 нфс:

Если указана опция bg, тайм-аут или сбой заставляют команду mount(8) разветвлять дочерний процесс, который продолжает попытки смонтировать экспорт. Родительский процесс немедленно возвращается с нулевым кодом выхода. Это называется «фоновым» монтированием.

решение2

Вы действительно используете скрипт оболочки, а не fstab для монтирования дисков при загрузке?

Ознакомьтесь с /etc/fstab (выполните командучеловек fstab) и в частности, обратите внимание на опцию _netdev, чтобы в итоге получить что-то вроде.

10.10.10.10:/srv/share /mnt/mymnt   nfs4    defaults,noexec,nosuid,_netdev,auto     0       0

Отказ от ответственности: не копируйте и не вставляйте вышеизложенное, не ознакомившись предварительно с fstab!

P.S. В зависимости от вашей ОС, nobootwait также может быть полезным вариантом.

PSPS См. также параметры монтирования в nfs(5)

Связанный контент