无法在Windows 7上更新默认库中的R包

时间:2011-02-20 20:08:28

标签: r windows-7

我正在尝试使用update.packages更新RGui(64位)上的软件包,但我收到以下消息:

Warning in install.packages(update[instlib == l, "Package"], l, contriburl = contriburl,  :
  'lib = "C:/PROGRA~1/R/R-212~1.1/library"' is not writable
Error in install.packages(update[instlib == l, "Package"], l, contriburl = contriburl,  : 
  unable to install packages

我查看了资源管理器中的库文件夹,它只有set,所以我删除了它。但是,当我在执行此操作后立即再次检查属性时,它会重新出现。安装新软件包不受影响,因为它们在我的用户配置文件中有一个单独的文件夹。

让这个有用吗?

11 个答案:

答案 0 :(得分:49)

对我来说也是如此,经过编程的小时和小时后," R" Gui Project,我感到无聊,因为当界面使用某种类型的单词(命令)的颜色时,更容易阅读代码。好吧,我决定安装RStudio,但很快我遇到了包安装问题。这似乎发生在Windows 7中。我用RSutido解决这个问题的方式是:

  1. C:\ Program Files \ R - 这是包含" R"而不是RStudio文件夹!
  2. 右键单击属性。
  3. 安全。
  4. 在"组或用户名"选择你的名字
  5. 点击"编辑"
  6. 选择"完全控制"
  7. 应用并单击确定
  8. 完成此步骤后,您可以安装所有软件包: - )

答案 1 :(得分:40)

通常,您需要管理员权限才能更改程序文件中的内容。尝试以管理员身份运行RGui。

答案 2 :(得分:6)

尝试

install.packages('package_name', lib='folder')

您可以指定一个文件夹来安装您具有写入权限的库。

希望这有帮助

答案 3 :(得分:2)

我有这个确切的问题,只是为自己改变了。那是我导航到C:/ PROGRAM / R然后右键单击R以显示属性。单击要为其添加权限的组/用户的“安全”选项卡。那对我来说是USER然后单击EDIT然后选择未选中的框以允许控制。我必须为每个用户专门做这个(当然我作为管理员一直在运行)。单击“应用/确定”,一切顺利。我现在可以更新/安装/新库以及这台计算机的用途,而无需像管理员那样运行R.

答案 4 :(得分:2)

从C:\ Program Files卸载并重新安装到C:\ R为我工作

[请参阅mdsumner的评论和Windows常见问题解答here]

“...使用具有管理员权限1 的帐户为单个用户安装的Vista / Windows 7/8 / Server 2008/2012用户应考虑安装到非系统区域(例如C) :\ R)

答案 5 :(得分:1)

没有更多信息,我的第一个猜测是你没有足够的权限写入R站点库文件夹。通常,R会提示创建要安装的用户lib文件夹,但在Windows Vista / Windows 7下这可能不可靠。

尝试:

dir.create(Sys.getenv("R_LIBS_USER"), recursive = TRUE)

在R控制台中。库现在应该安装到/Users/"you"/R/win-library/x.y,您有相应的权限。

答案 6 :(得分:1)

我有BitDefender 2018,不得不禁用“安全文件”和“防火墙”。

答案 7 :(得分:0)

首先尝试使用此命令选择离您更近的曲面镜位置

chooseCRANmirror()

然后尝试安装包。当我收到有关安装" devtools"。

的警告时,此命令对我有用

答案 8 :(得分:0)

我在Windows 10中也遇到过这种问题,然后在Bitdefender 2018中禁用“安全文件”。它对我有用

答案 9 :(得分:0)

我最近有一个类似的错误。以管理员身份运行RStudio无效。更改C:/Programs/R的权限有点笨拙,因为您必须为每个用户重复此权限。

对我来说,解决方案是如下更改R的库路径

  1. 在R控制台中,键入.libPaths()。您会看到类似这样的内容,

    "Path/to/user/R/win-library/x.x" "C:/Programs/R/R-x.x.x"

    存在两个路径是因为您在安装过程中定义了用户特定的lib路径。用您的R版本替换x.x.x。

  2. 现在将lib路径设置为Programs目录

    .libPaths = "C:/Programs/R/R-x.x.x"

现在您可以install.packages()update.packages()了!

答案 10 :(得分:0)

有时,您的防病毒软件也可能会阻止该应用程序。如果反病毒已阻止该应用程序,请取消阻止它。