RStudio 和 Google Drive 同步问题: “该进程无法访问该文件,因为它正被另一个进程使用”

因此,我使用 RStudio 并将我的文件存储在 Google Drive 上(这个版本在你的系统上有文件夹,就像 Dropbox 一样)。我使用它是因为它比 Dropbox 提供了更多的免费空间,而且我需要这些空间来做我正在做的项目。

当我尝试编写任何文档时——一个 R 脚本,一个 RMarkdown 文件,等等。.我得到了标题中提到的错误。使用 Dropbox 不会出现这种情况。我已经为 Dropbox 找到了这个问题的答案,但是这个解决方案(告诉 Dropbox 不要同步 Rproj 文件)似乎不适用于 Google Drive (如果适用,请纠正我)。

目前,我暂停谷歌驱动器,这是罚款,但我经常忘记恢复它,这导致头痛。

谢谢你的帮助!

11205 次浏览

我不知道是什么原因导致了这个错误,但是我通过以下步骤解决了这个问题:

假设您有一个名为 temp.R的文件,它给出了这个错误。

1)复制 temp.R的所有内容,并在本地驱动器(Google 驱动器以外的任何地方)上创建一个新文件,然后将内容粘贴到那里。保存一些名称说 demo.R

2)现在关闭 temp.R从 RStudio 和移动 demo.R到谷歌驱动器文件夹,现在通过 RStudio 文件浏览器打开它。

现在可以使用 demo.R作为新文件并开始处理它。它还将保存今后所做的所有更改。

所以基本上,我们只是创建一个新文件,并用旧文件替换它。

我也有这个问题很长时间了。最简单的解决方案是在 RStudio 中工作时退出/关闭 GoogleDrive。你不会有正在进行的备份,但这不是一个如此巨大的问题。你仍然可以在午休时间或者下班后同步你的硬盘。这也可能解决许多人面临的其他问题。所有的 GoogleDrive 可能不是最好的备份解决方案。我认为硬盘只用于电子邮件和随机共享文档(15-100Gb)仍然是一个好主意,但对于严肃的备份(至少1Tb)可能是 DropBox 或其他解决方案更好。

编辑: 进一步使用 RStudio 我的解决方案没有解决它-同步弹出只是发生在一个较低的频率。问题是 Google Drive 目前没有一个功能可以忽略文件夹只是文件类型。

--

这解决了我的问题:

  1. 在谷歌驱动器/备份和同步转到 偏好..。
  2. 我的电脑下单击 改变:
  3. 忽略带有这些扩展名的文件下添加 .rproj.user

见下面的截图:

Step 1

Step 2

Step 3

除了奥利弗的回答,你还可以补充一下。历史到 Gdrive 的清单,忽略的事情。基本上,任何在您输入/工作而没有显式保存的情况下被更新的文件都有可能发生冲突。我还要加上。如果你在 OSX 上的话,DS _ Store。

这不是 OP 的问题,但是对于那些仍然摸不着头脑的人来说,运行 RSelenium 可能会留下一个孤立的 Java 进程,并在命令提示符上通过 Rscript 导致相同的错误消息。你怎么知道?尝试删除。R 档案有问题。它会说

该操作无法完成,因为该文件在 java.exe 中打开

有关相关问题,请参见 https://github.com/ropensci/RSelenium/issues/228