微软给的是同步,你要的是一个盘
搜这个问题,出来的要么是某个早就失效的 WebDAV 地址教程,要么是卖虚拟盘的产品页。两类都不先说清楚微软到底提供了什么,所以我们从这里开始。
官方 OneDrive 客户端会在用户目录下建一个文件夹,通常是 %USERPROFILE%\OneDrive,并与云端保持一致。打开「按需文件」后,里面是占位文件,打开时才下载,磁盘开销很小。但它不是盘符,不是挂载点,批处理脚本、渲染节点或者认死 Z:\ 的老软件都用不上。
这就是这个搜索词存在的原因。补上这个缺口有四种办法,好坏差别不小。
| 做法 | 实际得到什么 | 重启后还在吗 | 代价 |
|---|---|---|---|
OneDrive 客户端 + subst | 同步文件夹上的一个盘符 | 不在,subst 只对当前会话有效 | 底下仍然是同步文件夹 |
| 个人版 OneDrive 走 WebDAV | 一个映射的网络驱动器 | 有时 | 旧端点,开了两步验证就容易挂 |
| SharePoint / OneDrive for Business 走 WebDAV | 一个映射的网络驱动器 | 不在 | Basic 凭据无法被凭据管理器保存 |
| 本机 WebDAV 桥接,例如 AnyStorage | 一个盘符覆盖 OneDrive 与其他所有连接 | 登录时映射即可保留 | 免费版只读 |
做法一:用 subst 给同步文件夹一个盘符
subst 是一条有官方文档的 Windows 命令,它的全部工作就是「把一个路径关联到一个盘符」。这是从 OneDrive 文件夹到 Z:\ 最短的一条路,不需要服务、不需要改注册表、也不需要管理员权限。
cmd
subst Z: "%USERPROFILE%\OneDrive"
subst
subst Z: /d两个限制要先知道。第一,subst 建立的是当前登录会话的虚拟盘,重启就没了,所以应该放进登录脚本或设为登录时触发的计划任务。第二,底下仍然是同步文件夹:任何遍历整棵目录树的程序(备份代理、索引服务)都会把占位文件实体化、真的把字节拉下来——而这恰恰是想挂载 2TB OneDrive 的人要避免的。
另外,net use 不接受本地路径,它要 UNC 路径或 URL。这正是 WebDAV 路线存在的原因。
做法二:WebDAV 路线,以及它令人失望的地方
个人版 OneDrive 历史上有一个 WebDAV 端点,形式是 https://d.docs.live.net/<CID>,其中 CID 是能在 OneDrive 网页地址里看到的十六进制账号标识。
cmd
net use Z: https://d.docs.live.net/00A1B2C3D4E5F678 /user:you@example.com *请把它当成遗留方案。微软自己的存档文章说明,开启两步验证的账号需要使用应用密码而不是账号密码;而 2026 年的 Microsoft Q&A 里有不少帖子反映,即便把站点加入受信任站点,这种映射也会直接以拒绝访问或找不到网络名失败。微软给的建议是用同步客户端。个人版 OneDrive 的 WebDAV 映射属于被容忍,而不是被支持。
工作或学校账号的情况好一些。SharePoint 或 OneDrive for Business 的文档库可以用 WebDAV 重定向程序文档里的 UNC 形式映射,即 \\server[@SSL][@port][\path],其中 DavWWWRoot 表示服务器根:
cmd
net use Z: \\contoso.sharepoint.com@SSL\DavWWWRoot\personal\alice_contoso_com\Documents如果这时返回「发生系统错误 67。」或资源管理器显示「错误代码: 0x80070043」,原因几乎总是 WebClient 服务没有运行——微软在 2023 年 11 月弃用了它,现在默认不启动。完整原因见 net use 错误 67 和 WebDAV 错误 0x80070043。另外要有心理准备:每次登录后都要重新建立映射,因为微软明确说明从 Windows 7 起 Basic 认证的凭据无法由凭据管理器保存。
AnyStorage 的做法
AnyStorage 把 OneDrive 当作众多存储连接中的一个,然后通过跑在你自己机器上的 WebDAV 服务把所有已打开的连接一起暴露出来。侧边栏 Services,WebDAV 标签,按 Start,端点是 http://127.0.0.1:3211,HTTP Basic 认证始终开启:默认用户名 anystorage,外加首次使用时生成的 24 个字符密码,两者都带复制按钮。
映射一次,盘里的文件夹就是你的连接:OneDrive 和 S3 桶、Cloudflare R2、Backblaze B2、MinIO、Google Cloud Storage、Azure Blob、阿里云 OSS、腾讯云 COS、Google Drive、Dropbox、WebDAV 服务器、FTP、SFTP 以及本地文件夹并列。一个映射,而不是每个服务一个。
cmd
reg add "HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters" /v BasicAuthLevel /t REG_DWORD /d 2 /f
net stop WebClient
net start WebClient
net use Z: http://127.0.0.1:3211/ /user:anystorage *BasicAuthLevel 必须是 2,因为端点是回环上的 HTTP,而 Windows 默认拒绝在明文 HTTP 上发送 Basic 凭据。这是一次性改动,流量也不出本机。
两个要说清楚的限制:免费版的 WebDAV 挂载是只读的,读写属于 Pro;免费版可用两个存储连接。另外连接是懒加载的,只有在本次会话里于应用内打开过的连接才会出现在 WebDAV 根目录下。
在 Mac 上
不需要 WebClient 那样的服务,也不需要 macFUSE 之类的内核扩展。Finder 里按 Cmd+K,输入 http://127.0.0.1:3211,填同样的凭据,卷就会像普通网络共享一样出现在 /Volumes 下。Mac 上 OneDrive 的同步文件夹是 ~/OneDrive 或 ~/Library/CloudStorage/OneDrive-<租户>,同样是文件夹而不是卷。AnyStorage 需要 macOS 11 或更高;0.2.24 于 2026 年 9 月 23 日发布,最快的安装方式是 brew install --cask kilerd/tap/anystorage。
能直接用 net use 映射 OneDrive 吗?
工作或学校账号可以,走上面的 SharePoint @SSL\DavWWWRoot 形式。个人账号的 d.docs.live.net 是遗留端点且越来越不可用,请按「同步文件夹 + subst」或本机 WebDAV 桥接来规划。
挂载后的 OneDrive 会占本地磁盘吗?
走 WebDAV 挂载不会,文件按需取回,不做镜像。用 subst 套在同步文件夹上则会,只要占位文件被读取就会实体化。
为什么映射每次重启后都消失?
两个独立原因。subst 的盘符按设计只存在于当前会话。Basic 认证的 WebDAV 映射在 Windows 7 及以后无法由凭据管理器恢复,所以微软自己的建议是用登录脚本重新执行 net use。
Windows 11 和 Windows 10 有区别吗?
机制完全一样。实际差别在于 WebClient 自 2023 年 11 月起被弃用且默认不启动,越新的机器越容易在第一次映射时失败。
接着看
- Google Drive 的同一件事:把 Google Drive 挂载成网络驱动器
- Dropbox 的同一件事:把 Dropbox 挂载成网络驱动器
- 映射连不上时:Windows 连不上 WebDAV