我正在双启动 Linux Mint 18.2 和 Windows 10。我已从 Windows 同步 OneDrive,但我似乎无法从 Linux 访问 OneDrive 文件夹。
终端显示我有一个 OneDrive 文件夹,但ls -all
在 OneDrive 文件夹上出现以下错误: unsupported reparse point
我做了一些谷歌搜索,问题可能与它位于 NTFS 分区上以及 Microsoft 可能压缩 OneDrive 内容有关,但我无法最终验证。
还有其他人有这个问题吗?对于上下文,我不需要从 Linux 同步 OneDrive - 我只是尝试从 Linux 访问保存在 Windows 分区上的 OneDrive 内容。
答案1
答案2
我按照上面的步骤操作,但它只适用于根目录,而且每次关机时都必须运行它,这很烦人。
我找到了一个不同的解决方案。
- 在 Windows 中,转到 OneDrive 设置,然后取消选中该选项节省空间并在使用时下载文件于设置标签。
- 注销您的 OneDrive 帐户(这应该会保存您的设置)
- 转到 OneDrive 文件夹 (C:\Users\\OneDrive),然后删除该文件夹或将其移动到其他位置。
- 重新启动您的电脑。
- 重新登录 OneDrive,然后完成同步。
- 启动进入 Linux,文件夹和文件应该可以访问。
答案3
建立在目前接受的答案为了删除 OneDrive 重新分析点,我发现 OneDrive 会在稍后登录时自动创建更多重新分析点,位于目录树的更下方。所以我必须定期递归删除目录中的所有重分析点。我制作了一个 .bat 文件来为我执行此操作,并使用 Windows 的任务计划程序安排了一个任务,该任务将在我登录时每小时运行一次(因为没有“注销”触发器)。这是 .bat 脚本:
@echo off
setlocal
:: Recursively deletes ReparsePoints from the current direcotry, so that Linux
:: can read the on-disk data.
::
:: Usage: call fix_onedrive_for_linux.bat from the OneDrive folder.
::
for /F "delims=" %%d in ('dir /S /AL /B') do fsutil reparsepoint delete "%%d"
:END
endlocal
echo on