XQRP | 闲趣日评 : 顺利解决 Alist 挂载 Google Drive 没几天就掉线的问题

本文转自: https://yufm.com/662069.html
仅做个人收藏,版权归原作者所有

作为非IT专业人员,经常会碰到各种各样不知所以然的问题。

用1Panel 装了几个小应用,计划用自动备份定期将数据通过 Alist 中转备份到 Google Drive (Gdrive). 但 AList 挂载 Gdrive 没几天就会掉线,挂载 Onedrive 和 Dropbox 就没问题。搞得我定期备份到 Gdrive 的任务老是失败。

还好有了 AI,这些问题基本不用求人就能搞定。用 Gemini 问了下问题原因和解决办法,几分钟搞定:

AList 挂载 Google Drive 没几天就掉线,1Panel装的几个常用的几个常用小应用通过通过 Alist 来作为中间的 WebDAV 桥梁进行日常天最常见的原因是你的 Google Cloud 项目处于“测试(Testing)”模式,导致 Refresh Token(刷新令牌)的有效期只有 7 天

以下是具体原因分析及彻底解决方法:

1. 核心原因:Google 的 7 天过期策略

如果你是按照常规教程在 Google Cloud Console 创建的 OAuth 客户端,默认的“发布状态”是 “测试(Testing)”

  • 规则: 在测试模式下,对于外部用户类型,Google 颁发的刷新令牌会在 7 天后失效。

  • 现象: AList 挂载成功后,前几天正常,正好到第 7 天或之后就报错 invalid_grant 或无法读取文件。

2. 彻底解决方法

你需要将 Google Cloud 项目的发布状态从“测试”改为“生产(Production)”

操作步骤:

  1. 访问 Google Cloud Console (OAuth 同意屏幕)

  2. 在左侧菜单点击 “OAuth 同意屏幕”

  3. 在中间找到 “发布状态 (Publishing status)” 栏目。

  4. 点击下方的 “发布应用 (PUBLISH APP)” 按钮并确认。

    • 注意:系统可能会提示你需要验证,但如果你没有配置敏感权限(Scope)或上传图标,通常可以忽略验证直接进入生产模式。

  5. 重新获取令牌: 修改完状态后,你需要去 AList 的设置里,删除原有的刷新令牌,重新通过 AList 提供的工具或 Rclone 获取一次新的 Refresh Token 并保存。

发表回复