1.7 KiB
1.7 KiB
针对你的需求——网络断开时仍能读写,网络恢复后自动同步——mount-s3 本身无法实现。它的设计哲学是强一致性,所有操作都依赖与 S3 的实时交互,没有提供参数来调整为“离线优先”模式。
要实现你想要的效果,需要换用其他专为这种场景设计的工具。
🛠️ 替代方案推荐:rclone
rclone 是目前实现你需求的最佳选择。它是一款功能强大的命令行工具,支持将 S3 挂载为文件系统,并提供了强大的 VFS(虚拟文件系统)缓存功能。
核心配置参数
通过以下参数,你可以将 rclone 配置为“离线优先”模式:
-
--vfs-cache-mode full:最关键参数。它会让所有读写操作都先经过本地缓存。写入时,数据先存本地,稍后再异步上传到 S3;读取时,文件会被缓存到本地供后续离线使用。这能有效隔离网络问题对应用的影响。 -
--vfs-cache-max-size:设置本地缓存的最大大小,例如10G或500G。 -
--vfs-cache-max-age:设置缓存文件的有效期,例如24h。 -
--vfs-write-back:设置数据在本地缓存后,延迟多久上传到 S3,例如5s。 -
--retries与--low-level-retries:设置网络请求失败时的重试次数,例如--retries 10 --low-level-retries 20。
使用示例
- 安装 rclone:参考 rclone.org 官方文档。
- 配置 S3 远程存储:运行
rclone config按指引添加你的 S3 端点(支持 AWS S3 及所有 S3 兼容服务)。 - 执行挂载命令:
rclone mou可以帮忙输入是吧