我正在使用 davfs2 挂载 webdav 共享。使用 davfs2 将同一文件夹安装在运行 Debian stable 的两个不同虚拟机上。所有选项都是相同的(两者都设置了使用锁 0)。第一台机器工作顺利。在第二台计算机上,我可以查看共享,还可以创建和编辑非常小的文件。例如
$ touch test
$ echo '123' > test
将创建该文件。任何更大的内容(大于 14 KB)都无法上传。查看系统日志,我可以看到 davfs 执行了 PUT 请求,但随后我得到
Aborted request (-2): Could not read status line
Request ends, status 0 class 0xx, error line:#012Could not read status line: connection timed out
我无法访问 webdav 服务器,但它是 owncloud 版本 10.0.10 安装。
使用 rclone 而不是 davfs2 时,我得到了相同的行为,因此问题并非特定于 davfs2
答案1
经过一番搜索,我发现出现问题的两台机器位于同一个本地网络中。最终发现是路由器的发夹问题。我无法通过实际的路由器硬件来实际解决问题。作为解决方法,使用代理服务器可以绕过该问题。在例子中
$ 导出 https_proxy="http://WORKING_PROXY_SERVER"
$ rclone -vv 复制测试文件 webdav 服务器:
适用于 rclone。使用配置选项
代理 foo.bar:8080
适用于 davfs2。