修复 NetDrive 文件列表未更新:强制刷新与缓存设置

阅读时间 5 分钟 troubleshooting feature performance
Tayson
TaysonSenior Engineer
NetDrive 挂载的云端驱动器没有显示新上传或重命名的文件,并不是出故障——只是目录列表被缓存了。以下是强制刷新及调整缓存的方法。

同事直接在 Google Drive 网页界面上传了一个文件,三十秒后,你在桌面上通过 NetDrive 挂载的驱动器里看到的还是旧的文件列表。上传本身没有问题——文件确实在 Google Drive 上。只是 NetDrive 还没有重新获取该文件夹的列表,只要知道该点哪里,右键点击一下就能解决。

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

一个盘符,始终同步

NetDrive 让 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 和 macOS 上显示为本地驱动器 — 无需同步,无需完整下载。

  • 右键点击即可立即强制刷新任意文件夹
  • 可调节目录缓存,适应多人编辑的繁忙驱动器
  • 在 Google Drive、S3、SharePoint 等平台上使用同一套盘符工作流
WindowsmacOS
下载 NetDrive →

免费试用。提供终身与订阅方案。

列表为何会变得过时

NetDrive 并不会在你每次打开文件夹时都重新查询云服务商的 API——那样会让浏览大型 Google Drive 或 S3 存储桶变得极其缓慢。取而代之,它会在一小段时间窗口内缓存目录列表,之后再次访问时从内存中重新显示。大多数情况下这是无感的:由于没有任何变化,你根本不会注意到缓存的存在。只有当其他人——同事、脚本,或登录同一账户的另一台设备——在你的挂载点仍持有旧列表期间,向同一文件夹添加、重命名或删除文件时,这个问题才会显现出来。

Windows Explorer showing file status overlay icons on a NetDrive-mounted cloud drive

这与 NetDrive 本地的 cache size(缓存大小)设置(100 GB–1 TB,可按驱动器单独配置)是两回事,后者控制的是 NetDrive 在本地磁盘上保留多少已下载文件内容。列表过时关乎的是文件夹元数据——即存在哪些文件——而不是文件字节是否已在本地缓存。

立即强制刷新

你不必等缓存窗口自然过期。在看起来过时的文件夹内右键点击,从右键菜单中选择 Force refresh

  1. 在资源管理器或 Finder 中打开 NetDrive 挂载的驱动器,导航到目标文件夹。
  2. 在该文件夹内的空白处右键点击。
  3. 选择 Force refresh

Force refresh option available from the right-click context menu on a NetDrive drive

NetDrive 会立即向云服务商重新查询该文件夹并更新显示内容——无需卸载并重新挂载整个驱动器,也无需等待下一次计划刷新。

NetDrive folder listing updated after a forced refresh, showing newly added files

为频繁变动的驱动器调整缓存

如果某个驱动器一整天都被多人或多个进程编辑——比如共享项目文件夹,或是向 S3 写入构建产物的 CI 流水线——每次都手动右键刷新会很麻烦。这时可以缩短 NetDrive 信任已缓存列表的时长,让它更频繁地重新检查:

  1. 打开 Drive Manager 并选择该驱动器。
  2. 点击 Properties → Advanced
  3. directory cache timeout(目录缓存超时)从默认值调低,对于持续变动的驱动器,可以设为 15–20 秒左右。

更短的超时意味着对服务商发起的 API 调用更频繁,因此最好有选择地应用——只针对确实存在并发编辑的一两个驱动器——而不是对所有挂载点全局生效。只有你自己使用的个人 Dropbox 并不需要这样设置。

NetDrive drive connection status showing an active, up-to-date mount

强制刷新仍无效时

如果强制刷新之后,你确信存在的文件仍未出现,那么更可能的原因根本不是缓存问题——而是服务商一侧的权限问题(NetDrive 登录所用的账户看不到那个文件或共享文件夹),或者对于 Google Drive 共享云端硬盘而言,是该文件本身就不在 NetDrive 所挂载的共享云端硬盘范围之内。在断定是 NetDrive 的问题之前,先用同一个账户登录服务商自己的网页界面,确认该文件是否可见。

小结

大多数”NetDrive 没有显示我的文件”的问题,归根结底都是列表缓存还没来得及更新——临时情况用强制刷新解决,持续变动的驱动器则调低目录缓存超时。如果问题另有原因,Fix Slow S3 Directory ListingFix Google Drive Shared Drive Not Showing 这两篇文章涵盖了另外两种最常见的成因。

— Tayson, NetDrive