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

我,使用R 2.13.0与Windows 7,给我的用户完全权限到R后的文件夹(如描述在这里)。这使我可以安装新软件包。


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


软件包“ MASS”成功拆包并检查了MD5的总和


警告:不能动弹临时安装 'C:\ Program Files文件\ r \ R-2.13.0 \库\ file6cae3bcf \大众'到'C:\ Program Files文件\ r \ R-2.13.0 \库\ MASS'


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


ps:以管理员身份运行R或将库位置移出“程序文件”不是解决方案(这是hack,但我正在寻找解决方案)


拉丁的传说
浏览 572回答 3
3回答

慕无忌1623718

我发现问题确实是杀毒软件的“实时文件系统保护”。我执行以下操作来解决此问题:trace(utils:::unpackPkgZip, edit=TRUE)我编辑第140行(R 3.4.4中的第142行):Sys.sleep(0.5)至:Sys.sleep(2)我好像杀毒软件停止了软件包tmp dir的创建。将其更改为2秒后,错误消失了。编辑:以编程方式执行此操作trace(utils:::unpackPkgZip, quote(Sys.sleep(2)), at = which(grepl("Sys.sleep", body(utils:::unpackPkgZip), fixed = TRUE)))

沧海一幻觉

如果由于公司政策等原因而无法关闭防病毒软件,那么这是我发现的解决方法。调试解压缩程序包功能,然后逐步执行它,可使防病毒软件有足够的时间来完成其工作而不会受到干扰。使用此命令:debug(utils:::unpackPkgZip)install.packages("packageName")然后在R在安装过程中开始调试时逐步浏览代码(多次按Enter)。
打开App,查看更多内容
随时随地看视频慕课网APP