拾壹-Linux下Rserve开机自启动

作者: 小秉子 | 来源:发表于2019-01-01 00:09 被阅读1次

    一、奇怪的开端

    为什么我要这样做?
    这是一个谜团,可能因为我无聊,也可能因为我真的实在太无聊,可是就这样了。
    我实在喜欢上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来说,自启动是不是必须呢?因为毕竟这也不是一个稳定的平台(有时候需要重启),但既然只是一个想用来找工作的平台我觉得也没什么所谓了,对吧?

    相关文章

      网友评论

        本文标题:拾壹-Linux下Rserve开机自启动

        本文链接:https://www.haomeiwen.com/subject/nmeglqtx.html