尝试安装VOLTTRON代理

时间:2016-10-21 18:50:59

标签: python-wheel volttron

SSH进入VOLTTRON实例,安装代理可以正常工作。注销,重新登录并安装结果,出现以下错误:

2016-09-13 11:46:24,409()volttron.platform.vip.agent.subsystems.rpc错误:JSON-RPC方法中未处理的异常' install_agent': Traceback(最近一次调用最后一次):   文件" /home/volttron/volttron/volttron/platform/vip/agent/subsystems/rpc.py" ;,第168行,方法     返回方法(* args,** kwargs)   文件" /home/volttron/volttron/volttron/platform/control.py",第287行,在install_agent中     agent_uuid = self._aip.install_agent(path,vip_identity = vip_identity)   文件" /home/volttron/volttron/volttron/platform/aip.py",第296行,在install_agent中     unpack(agent_wheel,dest = agent_path)   文件" /home/volttron/volttron/env/local/lib/python2.7/site-packages/wheel/tool/ init .py",第135行,解压缩     sys.stderr.write("解包为:%s \ n"%(目标)) IOError:[Errno 5]输入/输出错误

1 个答案:

答案 0 :(得分:0)

当任何后台进程被终止时,ssh会话终止,stdeff和stdout不会被重定向到/ dev / null,并且进程尝试写入它会导致IOError。

在这种情况下,VOLLTRON在安装代理时使用的第三方库之一试图写入stderr(对我们很懊恼)。即使平台使用-l选项运行,它仍然偶尔会写入stderr。遗憾的是,在所有情况下,VOLTTRON都没有可靠的方法使用stderr做正确的事情所以我们必须让用户知道他们何时需要将输出重定向到/ dev / null。

要在后台运行,请使用start-stop-daemon自动将所有内容重定向到/ dev / null或使用此命令启动平台:

volttron -vv -l volttron.log > /dev/null 2>&1&

然后,您可以安全地拒绝该进程并注销。安装仍然有效。