rclone OneDrive:“必须经过身份验证才能使用‘/drive’语法”

rclone OneDrive:“必须经过身份验证才能使用‘/drive’语法”

我只是第一次尝试同时使用 rclone 和 OneDrive。在 Windows PC 上,我运行rsync config它并生成了一个配置文件。然后我可以rclone sync . OneDrive:test,几秒钟内文件夹test就会出现在 OneDrive 界面中。我最终想在 FreeBSD 机器上使用它。我将整个配置文件从 Windows 机器逐字复制到 FreeBSD 机器(它只包含一个描述远程参数的部分OneDrive),但是当我运行相同的测试命令时rclone sync . OneDrive:test,我得到以下输出:

rclone@GALLERY:~ % rclone sync . OneDrive:test
2019/01/28 14:24:59 Failed to create file system for "OneDrive:test": failed to get root: unauthenticated: Must be authenticated to use '/drive' syntax
rclone@GALLERY:~ %

我不确定下一步该尝试什么。配置与 Windows 机器完全相同,在 Windows 机器上工作正常。省略个人部分,这是配置文件的内容:

[OneDrive]
type = onedrive
drive_type = business
token = {"access_token":"eyJ0eXAfxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAVeiklCYIgAA","expiry":"2019-01-28T15:11:32.2443131-06:00"}
drive_id = b!KW9cxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxvBSZB

我究竟做错了什么?

另外还有一个问题——当该令牌过期时会发生什么?我没有看到任何刷新令牌,并且令牌创建后仅 1 小时就过期。我急于取出实际令牌,却没有注意到我用“x”替换的选择包含令牌的结尾和刷新令牌的开头。所以我想我应该重新问这个问题,因为 rsync 是否会在每次过期时自动刷新令牌并重写配置文件?所以,只要我不让刷新令牌过期,并且没有特别糟糕的丢失数据包的运气,我应该会得到一个完整的刷新链吗?

我已经回答了题外话。在它工作的 Windows 机器上,详细的调试输出明确指出令牌已过期,并且正在用新令牌重写配置文件。所以,这就是那个问题!

答案1

我已经找出了问题所在。FreeBSD 的软件包系统有 rclone 1.43 版。我发现它在 Windows 上运行的版本是 1.45 版。这似乎没有太大的区别,但看起来 1.45 版可以运行,而 1.43 版不能运行。我卸载了 FreeBSD 1.43 软件包,改用 rclone 网站提供的 1.45 版,无需其他更改,它现在就可以运行了。想想吧!

相关内容