我刚开始使用 Ubuntu,想在 R 中编程。我从终端成功安装了最新版本的 R(当前为 2.12.2)。然后我尝试运行以下命令:
> install.packages("XML")
Installing package(s) into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
Warning in install.packages("XML") :
'lib = "/usr/local/lib/R/site-library"' is not writable
Would you like to create a personal library
'~/R/i686-pc-linux-gnu-library/2.12'
to install packages into? (y/n)
我应该创建个人目录还是我错过了某个允许我写入站点库的步骤。
提前致谢。
最佳答案
sarnold
的评论非常正确。在 Debian(以及 Ubuntu)包中,目录 /usr/local/lib/R/site-library/
由文件 /var/lib/dpkg/info/r 创建-base-core.postinst
脚本——相关代码为:
# edd 03 Apr 2003 cf Section 10.1.2 of Debian Policy
if [ ! -e /usr/local/lib/R ]; then
if mkdir /usr/local/lib/R 2>/dev/null; then
chown root:staff /usr/local/lib/R
chmod 2775 /usr/local/lib/R
fi
fi
if [ ! -e /usr/local/lib/R/site-library ]; then
if mkdir /usr/local/lib/R/site-library 2>/dev/null; then
chown root:staff /usr/local/lib/R/site-library
chmod 2775 /usr/local/lib/R/site-library
fi
fi
因此该目录归 root:staff
所有,模式为 2775,即“用户和组读写,其他用户只读”。
所以要在那里写,你有两个基本选择:
始终使用
sudo
或成为笨拙的root
。将自己添加到组
staff
。它可能有一个用户友好的 GUI;我是 Unix 老派,通过编辑/etc/group
和/etc/gshadow
手动完成——之后你可以直接安装(你需要一个新的shell 拥有这些权利,或者只是启动一个新的终端)。你当然也可以选择一个不同的组,或者创建一个,但是你还需要相应地改变/usr/local/lib/R/
中的目录树。
希望这对您有所帮助。 r-sig-debian 列表是解决此类 Debian/Ubuntu 问题的好地方,我推荐它。这个问题以前在那里出现过。
编辑:此外,相当数量(更复杂的)包是 Ubuntu/Debian 的一部分,因此要获取 XML,您只需执行 sudo apt-get install r-cran- xml
。执行 apt-cache search r-cran
以查看可用的内容。
关于r - 在 Debian/Ubuntu 中安装 R 包 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5560139/