这是一个两部分的问题。我正在使用 rundeck 运行一个脚本,该脚本取决于在节点上访问系统范围内的环境变量,我正在执行我在 /etc/environment.xml 中设置的脚本。
首先,我如何让 rundeck 摄取系统环境?我在 rundeck 中找不到任何选项来执行此操作。
其次,为什么默认情况下不会发生这种情况?我的印象是 rundeck 通过 ssh 工作;不应该每次登录节点都加载系统环境吗?
首先,我如何让 rundeck 摄取系统环境?我在 rundeck 中找不到任何选项来执行此操作。
我通过将以下行添加到:
set -a
. /etc/environment
. /etc/profile
1)将这些行放入文件中:/etc/rundeck/profile
2)将这些行放入脚本步骤
备注:我在我的 rundeck 中只使用脚本步骤,我总是把这些行放在脚本步骤的第一行:
#!/usr/bin/env bash
其次,为什么默认情况下不会发生这种情况?我的印象是 rundeck 通过 ssh 工作;不应该每次登录节点都加载系统环境吗?
我认为您需要在 ssh_config 文件中添加一些内容。检查此链接:Rundeck 未设置环境变量以使用不同的 ssh 端口进行远程执行