如何在没有Segmentation错误的情况下在Google Compute Engine上运行R.

Lin*_*ink 5 linux r cluster-computing segmentation-fault google-compute-engine

我正在尝试使用Google的计算引擎来运行R,但仍会遇到分段错误.这是我到目前为止所做的:

1)我安装了Cygwin和Google Cloud SDK并成功通过了Google Cloud Platform认证.

2)我使用谷歌提供的"debian-7-wheezy-v20140318"图像和"n1-standard-4"机器创建了一个虚拟机.

3)我已使用命令在此虚拟机上安装了R(使用add'l软件)

sudo apt-get update
sudo apt-get install -y libopenblas-base openmpi-bin libopenmpi-dev r-base openjdk-7-jre openjdk-7-jdk
Run Code Online (Sandbox Code Playgroud)

4)我已经使用该命令验证了软件是否已安装

apt-cache policy r-base
Run Code Online (Sandbox Code Playgroud)

返回安装v2.15.1-4.

每次我尝试提交一个简单的R脚本来安装一些常见的R包(通过命令"sudo R CMD BATCH --no-save installRpkgs.R"),输出日志给我错误

Segmentation fault
Run Code Online (Sandbox Code Playgroud)

当我ssh到虚拟机尝试显式运行R时,我也得到相同的错误.我有一种感觉,我错过了一些东西.也许我需要指定内存或写权限.我不确定,因为我还是云计算的新手.如果有人能帮助所有人,我会非常感激.

谢谢!

编辑:经过一些故障排除后,我设法确定罪魁祸首是"libopenblas-base".不知道为什么会造成这种情况,但是现在我只是继续没有它.

小智 -1

您可以安装包“strace”,然后运行“sudo strace R CMD BATCH --no-save installRpkgs.R”以查看进行了哪些调用及其退出状态。不幸的是,我不熟悉您遇到的问题,但当程序本身几乎没有输出时,strace 对于找出问题所在非常有帮助。