拾壹-Linux下Rserve开机自启动

本文分享了在Linux环境下配置Rserve自启动的过程,包括遇到的错误与解决方法,最终通过修改脚本成功实现。

一、奇怪的开端

为什么我要这样做?
这是一个谜团,可能因为我无聊,也可能因为我真的实在太无聊,可是就这样了。
我实在喜欢上R语言了,对比Python来说,这个挑战难度太大了!!

二、Linux开机自启动

其实一般来说,Linux开机自启动有几种方式,相信我,我都试过了,例如Systemd 入门教程:命令篇centos7 tomcat service 自启动Linux中如何自动启动服务在Linux中利用Service命令添加系统服务及开机自启动,甚至Supervisor(我知道是不适合这种没有托管的后台程序)等我都试过了,我是绝了个望。

三、寻找错误

在找寻中间,我发现在/etc/init.d下生成一个服务的方法还是可行的哦(因为之前nginx就是这样自启动的),甚至如果不是开机启动而是手动service rserve start是可以启动的!但为什么就是没办法开机自启动呢?
试了好久之后,发现估计是脚本写错了,我尝试用其他的服务脚本去改,诶!居然有点起色----->出现了新的错误!

四、新的错误其实也是好的嘛

知道有新的错误就可以解决新的错误嘛,新的错误就是:Fatal error: you must specify '--save', '--no-save' or '--vanilla'
上网已搜,这错误是属于R报出来的,就是说我的脚本是可以运行的而只是R那里出错了,结果出来了,只要在我的脚本那里加上一个选项参数--no-save就行了,结果,可以了。

五、自启动脚本

/etc/init.d目录下,生成一个rserve脚本,脚本内容如下:

#!/bin/bash
# chkconfig: 2345 05 98
# description: Start Rserve
### BEGIN INIT INFO
# Provides:          rserve
# Required-Start:    $network
# Required-Stop:     $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
### END INIT INFO

start() {
        /usr/local/lib64/R/bin/R CMD /home/Berry/R/x86_64-pc-linux-gnu-library/3.2/Rserve/libs//Rserve  --no-save
}

stop() {
    true
}

case "$1" in
    start)
       start
       ;;
    stop)
       stop
       ;;
    restart)
       stop
       start
       ;;
    status)
       ;;
    *)
       echo "Usage: $0 {start|stop|status|restart}"
esac
exit 0

六、我实在是太无聊了

我觉得我很无聊啊,怎么办?
有没有工作邀请我去做?
我在找工作啊!!

七、Rserve

其实对于Rserve来说,自启动是不是必须呢?因为毕竟这也不是一个稳定的平台(有时候需要重启),但既然只是一个想用来找工作的平台我觉得也没什么所谓了,对吧?

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值