Windows 7,update.packages问题:"无法移动临时安装"?

Tal*_*ili 74 permissions file-permissions packages r windows-7

我,使用R 2.13.0与Windows 7,给我的用户完全权限到R后的文件夹(如描述在这里).这允许我很好地安装新包.

但是,当使用update.packages()来更新现有的包时,我不断收到以下错误(例如,更新MASS包时):

包'MASS'成功解包并检查MD5总和

警告:无法将临时安装 'C:\ Program Files\R\R-2.13.0\library\file6cae3bcf\MASS'移动到'C:\ Program Files\R\R-2.13.0\library\MASS'

对于如何解决这个问题,有任何的建议吗?

ps:以管理员身份运行R或将库位置移出Program Files不是一个解决方案(这是一个黑客 - 但我正在寻找解决方案)

小智 106

我发现问题确实是防病毒"实时文件系统保护".我执行以下操作来解决问题:

trace(utils:::unpackPkgZip, edit=TRUE)
Run Code Online (Sandbox Code Playgroud)

我编辑第140行(R 3.4.4中的第142行):

Sys.sleep(0.5)
Run Code Online (Sandbox Code Playgroud)

至:

Sys.sleep(2)
Run Code Online (Sandbox Code Playgroud)

我好像杀毒软件阻止了tmp目录的创建.将其更改为2秒后,错误消失.

编辑:以编程方式执行此操作

trace(utils:::unpackPkgZip, quote(Sys.sleep(2)), at = which(grepl("Sys.sleep", body(utils:::unpackPkgZip), fixed = TRUE)))
Run Code Online (Sandbox Code Playgroud)

(来自@DavidArenburg)

  • 我现在已经反复做了(它确实工作_temporarily_),但由于某种原因编辑不会坚持......一段时间后或在任何会话重启时它会回到`Sys.sleep(0.5)`.如何使编辑永久化? (7认同)
  • 你也可以这样做有问题,例如`trace(utils ::: unpackPkgZip,quote(Sys.sleep(2)),at = which(grepl("Sys.sleep",body(utils ::: unpackPkgZip),fixed = TRUE )))` (4认同)
  • 我昨天安装了R 3.5并且问题消失了,同时删除了`Sys.sleep(0.5)`行,所以我想它不再需要了! (3认同)
  • 还发现这是一个临时解决方案,重启后Sys.sleep返回0.5s - 希望下次更新R将解决这个问题 (2认同)

Tal*_*ili 64

只是为了更新每个人,我(我想我)找到了问题的根源:防病毒软件.

"实时文件系统保护"阻止了R在下载文件夹之后复制文件.将R目录添加到例外列表(再加上添加用户权限并在D:\ R上安装R),问题就消失了.通过所有这些工作,我不妨切换到Linux(我应该,真的......)

(我用以上信息更新了我的帖子:http://www.r-statistics.com/2011/04/how-to-upgrade-r-on-windows-7/)

塔尔,我希望将来有人会帮助他

  • 不幸的是,我们在公司环境中锁定了an​​itvirus设置 (10认同)
  • 对于遇到卡巴斯基问题的用户,此站点显示了如何添加排除规则:http://support.kaspersky.com/11146 (2认同)

She*_*don 41

如果您无法关闭防病毒,例如,由于公司政策,这是我找到的解决方法.调试解压缩包功能然后逐步执行它可以让防病毒软件有足够的时间完成工作而不会干扰.使用此命令:

debug(utils:::unpackPkgZip)
install.packages("packageName")
Run Code Online (Sandbox Code Playgroud)

当R在安装期间开始调试时,逐步执行代码(通过多次输入).

我在这里找到了解决方案.


xia*_*dai 14

如果你可以直接从CRAN下载二进制文件.在Windows上下载时,它将是一个zip文件.现在手动将其解压缩到R(.libPaths())的..library /文件夹中.它在一些包装上对我有用.


小智 7

我有这个问题安装漩涡和dplyr.我正在使用Windows 64位.

警告:无法移动临时安装

我做的是我在C:驱动器上访问了我的临时文件,并打开了我的文件提取程序,我将文件从C:驱动器中的临时文件解压缩到C:驱动器中的R程序文件,手动复制它们.这适用于dpylr和漩涡.火上浇油!

干杯,

桃子