我正在尝试使用Ubuntu 14.04上的Upstart脚本中“/ opt”下安装的自定义自编译Python版本。常规设置如下所示:
陷阱错误功能定义为
function error_handler()
{
python << END
# python code...
END
}
trap 'error_handler ${LINENO} $?' ERR
使用自定义Python安装中的pip,任何第三方侧包都安装在“/ opt”下
我还尝试使用“.bash_profile”文件并从中调用“.bashrc”
在“/var/log/upstart/service.log”下的日志文件中,我看到错误消息,指出找不到任何已安装的第三方Python端包。这些软件包安装在“/ opt”
下
自定义Python安装本身按预期工作。我可以运行任何Python代码并导入任何已安装的side-package。
到目前为止,我尝试过将其作为服务工作:
sudo -u user_name
命令修改bash脚本中的PATH env变量:
PATH=/opt/bin:$PATH
export PATH
function error_handler()
{
PATH="$PATH" python << END
# python code...
END
}
trap 'error_handler ${LINENO} $?' ERR
设置PYTHONHOME
和PYTHONPATH env
变量
sys.path.append
从Python代码更新库搜索路径以下是我的问题:如何说服Startup服务选择我要运行的Python版本并使用“/ opt”下安装的软件包?
基本上,我想在Ubuntu 14.04上使用Python 2.7.9。到目前为止,我找不到任何预编译的Ubuntu 14.04软件包。
答案 0 :(得分:0)
我们可以通过添加setuid
调用服务配置和正确使用Python虚拟环境来使用我们自编的Python。
奥列格