【发布时间】:2017-03-13 22:47:52
【问题描述】:
我目前正在尝试正确设置守护程序以在远程计算机上运行任务。问题是,我可以正确地手动启动命令,但是当它由守护程序启动时,它将无法工作,因为尚未设置环境变量。
在手动使用我的命令之前,我必须这样做:
sudo -s
export HOME=/home/tim
cd ~
export PERL5LIB=/usr/local/my/lib
export PATH=/my/path/to/tools/bin
然后我运行我的命令。所以我怀疑如果守护进程没有设置它,它将无法工作。我怎样才能用守护进程做到这一点或摆脱依赖?
也许有一个临时文件夹?不确定。
【问题讨论】:
-
将
cmd更改为bash -c cmd(假设这些环境变量由.bash_profile设置)。 -
这是一个非常受限的 PATH;无法访问
/bin或/usr/bin有点不寻常。你确定那是你想要的。此外,export HOME = /home/tim行也不好;=标志周围不应有空格。 -
是的,你是对的,没有空间。当我“手动”编写该行时,我只是错误地添加了它们,是的,路径指向某个 /bin 文件夹
-
你为什么要删除帖子?这是一个很好的问题(在“edited [time]”的链接下可以在修订版中看到和提供),这可能对其他人有用,正如良好的投票所证实的那样。我建议您恢复它并保留它。
标签: perl dependencies export daemon