在RHEL7.4盒中成功安装rpm后,我试图在根环境中(<我>以root身份进行安装)获得 shell脚本
rpm规范%post 部分如下:
%post
source /etc/profile.d/env.sh
脚本 env.sh 在安装后可以在上述路径中使用,它用于设置 PYTHONPATH 环境变量,如下所示:
pypath="/opt/lib"
if [ "$(echo $PYTHONPATH | grep $pypath)" == "" ]; then
export PYTHONPATH="$PYTHONPATH:$pypath"
fi
但是,即使我将“ source ”命令更改为“ 。”脚本
,在成功安装rpm后也不会发生这种情况。当我手动获取脚本 env.sh 时,将设置变量
答案 0 :(得分:3)
该命令可能正在正确运行,但是您希望每个人都可以更改PYTHONPATH;情况并非如此:PYTHONPATH仅在%post节的shell会话中更改。
每次启动新的shell(或bash)会话时,都会重置环境变量。您可以查看相关问题,以获取有关如何永久更改环境变量的信息。那么您可以选择用于rpm软件包的策略,例如:
https://unix.stackexchange.com/questions/117467/how-to-permanently-set-environmental-variables