
Для моего демона я смонтировал (несколько) удаленных папок WebDAV только для чтения¹ как "источники", чтобы периодически извлекать файлы. Пусть $SOURCE
будет одна из них ради этого вопроса.
Прежде чем бездумно использовать $SOURCE
, я считаю, что было бы неплохо проверить, работает ли монтирование, поскольку WebDAV не славится своей высокой стабильностью, поэтому проверка во время монтирования¹ уже выполнена, а позже может «сломаться»².
Следующие идеи мне не подходят:
- Проверка наличия известного удаленного файла:
$SOURCE
не обязательно контролируется мной - Тестирование на наличие чего-либо вообще:
$SOURCE
может быть и пустым, тогда будут ложные отрицательные результаты - Проверка выходных данных
mount | grep " $SOURCE "
: не может ли это привести к ложным срабатываниям на netdevs? - Проверка результата
mountpoint -q "$SOURCE"
: То же самое с ложными срабатываниями?
Более:
Проверка должна исключить использование ненадлежащего объема пропускной способности сети и памяти.Таким образом, дополнительное curl
монтирование DAV $SOURCE
и проверка различий во всей структуре файлов/папок, очевидно, должно решить мою проблему, но также нарушает это требование любым возможным способом.
Проверка должна работать либо в bash³+"basic linux stuff", либо в microperl.Вздутие плохо влияет на маршрутизаторы.
Я знаю, davfs2
что использует кэш.А что если он смонтирован, структура кэширована, а затем соединение не удается? Не окажусь ли я в итоге с кучей пустых файлов в $SOURCE
?
¹ Я вызываю davfs2
из сценария. Слышал, ты хочешь, чтобы я был точен.
² На самом деле мой демон должен быть в первую очередь развернут в средах с динамическим IP-адресом и использоваться круглосуточно, поэтому источникиволяиспытывают ежедневные переподключения к Интернету.
³ Пепел busybox'а, если быть точным снова.