我已经使用了以下很长时间了,似乎无法使其正常工作。
我要做的是在R脚本运行后自动关闭Ubuntu EC2实例。
为此,我使用/etc/rc.local
,其中我有一行如下
Rscript /home/ubuntu/shutDown.r > /home/down.log 2>&1
脚本被执行但日志显示
Error in library(DBI) : there is no package called 'DBI'
Execution halted
DBI
是由shutDown.R
加载的库,但我知道问题不在于没有DBI
包,因为当我使用命令行运行脚本时,如
Rscript shutDown.r
一切正常。即使我跑
sudo sh /etc/init.d/rc.local start
有效。
什么可以阻止脚本在引导期间加载库?我尝试删除DBI
,错误出现在下一个库中。因此,脚本在引导期间查找库的方式肯定会发生一些事情。我不知道如何解决这个问题,所以如果有人能提供任何提示,我会非常感激。
非常感谢!
答案 0 :(得分:1)
在/usr/local/lib/R/site-library
中安装本地R软件包---无论如何都是默认位置---默认情况下会找到它们。对于DBI,您还可以安装r-cran-dbi
进入另一个默认目录。
这是我近十年来一直关注的Debian / Ubuntu软件包的默认设置。它有效。否则使用library()
的显式库位置参数。