我需要导出一个变量FOO=stringhere,以便系统进程可以使用它。我想这么做的地方是“启动工作”。
不幸的是,我尝试按照Upstart手册来做env FOO=stringhere http://upstart.ubuntu.com/cookbook/#environment-variables
但是在启动系统之后,echo $FOO什么也不返回。
我是想做一些不可能的事情,还是有什么我应该知道的问题?
发布于 2011-09-15 14:35:58
正如你提到的那一页所说的,
Upstart允许您设置环境变量,这些变量将被定义在作业配置文件中的作业访问。
指示在启动时系统守护进程使用的环境中设置了变量。一旦登录,用户环境将被单独配置。
如果您想检查守护进程是否知道您设置的变量,可以通过临时修改它的启动脚本并添加类似于logger "=============== The variable FOO is set to $FOO ====================="的内容来测试它。然后,您应该看到在引导过程中记录的信息(例如,查看/var/log/messages )。
发布于 2013-08-16 21:04:45
您想要完成的更适合/etc/profile,它是由登录shell编写的source。
export foo="String here"
https://unix.stackexchange.com/questions/20780
复制相似问题