1

mount.davfs (из davfs2) позволяет монтировать сервер WebDAV в локальной файловой системе. Однако, даже если вы хотите прочитать только один байт из файла, davfs2 будет блокировать, пока не загрузит весь файл (который может быть огромным). Например, это блокирует (виртуально) навсегда канал WAN.

dd if=/mnt/webdav/1GB.bin bs=1M count=1 of=1M.bin

Процесс не может быть остановлен, пока не будет загружен весь файл. (Но вы можете заставить размонтироваться, я полагаю.)

В следующей команде davfs2 загружает весь файл перед передачей одного байта в gzip:

pv < 100MB.bin | gzip > 100MB.bin.gz

Я могу разобраться с проблемой в первом случае (избегая ее), но во втором случае мне нужен драйвер файловой системы для передачи данных в процесс чтения, как только драйвер fs получит данные, а не после того, как весь файл скачал. Есть ли альтернативы davfs2, которые могут это сделать?

1 ответ1

1

Вы можете попробовать Fusedav, WebDAV Mounter для предохранителя. Однако я не знал о таком ограничении, вы уверены, что ваш сервер WebDAV правильно настроен?

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