@weibaohui/dsh-webdav-server

DSH(DeepSeek Harness)的理念是“一切皆插件”。当需要将本地文件系统或工作区共享给其他设备时,@weibaohui/dsh-webdav-server 是一个实用的解决方案。该插件将一个共享目录变成 WebDAV 服务器,使其可以被 Windows、macOS、Linux 以及 iOS 的“文件”应用挂载为本地磁盘。

核心功能

  • 多平台挂载:提供标准的 WebDAV 接口,支持 Windows、macOS、Linux 以及 iOS/iPadOS 原生文件应用直接挂载。
  • 独立服务:拥有独立的监听端口(默认 19087)和认证机制,与 DSH 网页界面及其他插件完全隔离。
  • 双重认证模式:支持“独立令牌”和“复用 user-management 账号”两种认证方式。
  • 只读与软链接:支持开启只读模式,并支持跟随软链接。
  • 热更新:配置变更(如端口、令牌、根目录)后,插件每 3 秒比对指纹自动重建监听器,无需重启 DSH。
  • 可视化配置:共享根目录、监听地址、端口、令牌等均在设置页可视化配置,并内置三平台挂载指南。

安装与启用

安装该插件后,重启 DSH 即可使用。

dsh plugin add github:weibaohui/dsh-webdav-server

安装完成后,进入 设置 → WebDAV 服务器 页面。

基本用法

  1. 在设置页确认服务运行中(默认已启用)。
  2. 复制设置页里的局域网地址(默认 http://<你的IP>:19087/)和访问令牌。
  3. 在另一台电脑或设备上,按照设置页提供的“挂载指南”进行连接:
    • 用户名:任意填写(如 dsh)。
    • 密码:填入上述复制的访问令牌。

认证模式

该插件提供两种认证模式,可在设置页一键切换:

  • 独立令牌(默认):用户名任意,密码固定为访问令牌。零依赖,开箱即用。首次启动自动生成,可随时在设置页重新生成。
  • user-management 账号:复用 user-management 插件的登录用户名和密码。
    • 注意:开启两步验证(TOTP)的账号无法挂载(Basic 认证不支持动态码);被禁用的账号拒绝挂载;密码修改后,已验证的旧凭据最多再有效 5 分钟。

平台挂载指南

设置页内置了针对主流系统的挂载步骤,地址和凭据会自动代入。

macOS

在 Finder 中按 ⌘K(前往 → 连接服务器),输入 http://<ip>:19087/,连接后用户名任意,密码填令牌。或使用终端执行 open http://<ip>:19087/ 直接唤起连接窗口。

Windows

  1. 打开文件资源管理器,点击“映射网络驱动器”,文件夹填 http://<ip>:19087/,勾选“使用其他凭据”,用户名任意,密码填令牌。
  2. 若 Win11 23H2+ 映射无反应,需以管理员身份执行以下命令启用 WebClient 服务:
    sc config WebClient start= auto && net start WebClient
  1. 若使用 HTTP 明文连接,需修改注册表 HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\BasicAuthLevel 为 2(DWORD)并重启服务;若大文件拷贝失败,需修改 FileSizeLimitInBytes 为 4294967295。

Linux

使用 davfs2 挂载:

sudo apt install davfs2
sudo mkdir -p /mnt/dsh
sudo mount -t davfs http://<ip>:19087/ /mnt/dsh
# 用户名任意,密码 = 令牌

免交互配置:将 http://<ip>:19087/ dsh <令牌> 写入 /etc/davfs2/secrets,并设置权限 chmod 600。

iOS / iPadOS

直接打开“文件”App,点击右上角“连接服务器”,输入地址和令牌即可。

配置与持久化

配置数据存储在宿主服务的 ~/.dsh/settings.yaml 的 dsh-webdav-server 节下。插件默认共享根目录为 ~/.dsh/dsh-webdav-server/share,目录不存在时会自动创建。

注意事项

  1. 安全风险:根目录指向哪里,挂载者就能读写到哪里。建议不要将整个 HOME 目录指出去,公开目录建议开启只读模式。
  2. 依赖检查:若使用 user-management 模式,该插件未安装或用户库损坏时会自动回退到令牌认证。
  3. 兼容性:大文件传输可能受限于系统或客户端配置。

生态位置

该插件属于 DSH 插件生态的一部分,由社区维护。更多细节可查看 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜