运行Rscript的Linux bash自行关闭,如何追踪原因?

时间:2017-07-26 13:29:28

标签: r linux bash cron rscript

我有一台Ubuntu服务器,每天在0901运行一次网络抓取cron作业。

cron line: 01 09 * * 1-5 bash /root/FCPIDCheck.sh

该文件运行一个pid检查程序,以查看该进程是否已经从停止实例的前一天开始运行,并且日复一日地同时运行。

PIDFILE=/root/FC.pid
if [ -f $PIDFILE ]
then
  PID=$(cat $PIDFILE)
  ps -p $PID > /dev/null 2>&1
  if [ $? -eq 0 ]
  then
    echo "Process already running"
    exit 1
  else
    ## Process not found assume not running
    echo $$ > $PIDFILE
    if [ $? -ne 0 ]
    then
      echo "Could not create PID file"
      exit 1
    fi
  fi
else
  echo $$ > $PIDFILE
  if [ $? -ne 0 ]
  then
    echo "Could not create PID file"
    exit 1
  fi
fi

/root/FCScript
rm $PIDFILE

最后,文件FCScript调用以下Rscript实例:

cd /root/Program/
Rscript --no-save --no-restore --verbose doSomething.R >> ./logs/log_$(date "+%Y-%m-%d").Rout 2>> ./errors/err_$(date "+%Y-%m-%d").Rout

无论出于何种原因,某些早晨程序无法正常启动。我进入了syslog,发现没有安装MTA的错误,所以我安装了postfix来输出本地消息。

在服务器没有从cron作业开始的时候,我可以手动重启它,但几乎总能发现它会在30分钟内停止运行,因此存在潜在的问题,但我真的不喜欢&#39知道如何找到导致bash停止的原因。

我尝试从bt中手动运行FCScript文件以及从RStudio运行的代码,看看它是否是对已导致R发生错误的已删除网页的更改,但我发现Rstudio实例在实例运行正常在bash中被终止。

我显然不是Linux方面的专家,所以对我能做得更好的任何帮助和建议都非常感激。

0 个答案:

没有答案