Volttron init守护进程

时间:2016-08-17 16:50:44

标签: volttron

显然我最初的问题是模糊或被解释为一个坏问题。

我会再试一次。

有一个名为volttron的文件位于volttron / scripts / admin /,内容表明它是/是Volttron守护进程从init启动的。我注意到它引用了venv之外的路径(/ var / lib / volttron)为什么这个文件存在?有计划修改吗?有人修改过这个文件来实现从init开始吗?是否有关于这个主题的文件?

对于在计算机系统上提供服务的任何程序,自动初始化是一项非常重要的功能。

我提供了一段代码。

#! /bin/sh
### BEGIN INIT INFO
# Provides:          volttron
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Should-Start:      $network $named
# Should-Start:      $network $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: VOLTTRON (TM) Daemon
# Description:       VOLTTRON (TM) agent execution platform.
### END INIT INFO

# Author: Brandon Carpenter <brandon.carpenter@pnnl.gov>

# Do NOT "set -e"

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="VOLTTRON (TM) agent execution platform"
NAME=volttron
USER=volttron
VLHOME=/var/lib/volttron
DAEMON_ARGS="-v -l $VLHOME/volttron.log"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

1 个答案:

答案 0 :(得分:1)

假设您已在var / lib中安装了VOLTTRON,则设置了此脚本(scripts / admin / volttron)。要将其用于您的环境,请将VLHOME编辑到您安装它的位置。例如:/ home / volttronuser / git / volttron

使脚本可执行:chmod + x scripts / admin / volttron,然后将其复制到/etc/init.d /

使用OS自动启动:

sudo update-rc.d volttron defaults

手动启动和停止:

sudo service volttron start
sudo service volttron stop

查看状态:

sudo service volttron status

如果要在部署的情况下使用它,建议您编辑脚本以使用旋转日志配置(或使用http://www.linuxcommand.org/man_pages/logrotate8.html)。编辑脚本中的参数以在启动VOLTTRON时使用-L选项。这将使用rotatelog配置。

DAEMON_ARGS =&#34; -v -L $ VLHOME / examples / rotatinglog.py&#34;

您还需要编辑examples / rotatinglog.py来更改日志文件的位置。编辑&#34;文件名&#34;指向您的用户有权写入的位置。

   'handlers': {
        'rotating': {
            'class': 'logging.handlers.TimedRotatingFileHandler',
            'level': 'DEBUG',
            'formatter': 'agent',
            'filename': '/home/myuser/git/volttron/volttron.log',

注意: 脚本的cgroups部分支持用于资源管理的VOLTTRON插件,没有它就不需要。这就是它在脚本的start方法中注释掉的原因。