You need to enable JavaScript to run this app. Linux节点上Jenkins用户无法执行Fortify sourceanalyzer命令如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Linux节点上Jenkins用户无法执行Fortify sourceanalyzer命令如何解决

问题核心成因

bash: sourceanalyzer: command not found的本质原因是,以US-KIRAN身份安装Fortify时,软件可执行文件的路径仅写入了US-KIRAN用户的专属环境配置,Jenkins对应的US-JENKINS用户没有关联该路径,部分场景下还会存在目录读取/执行权限的拦截。

分步配置操作

  1. 定位sourceanalyzer的实际安装路径
    切回US-KIRAN登录节点,执行which sourceanalyzer,拿到命令对应的完整bin目录绝对路径,比如常见的安装路径为/opt/Fortify/Fortify_SCA_and_Apps_19.2.0/bin,把这个路径完整记下来。
  2. 为US-JENKINS用户补充PATH环境配置
    针对Linux下Jenkins非交互式shell加载环境的特性,选以下任意一种可靠方式配置即可,避免配置不生效的问题:
    • 系统用户级配置
      切换到US-JENKINS用户,依次编辑用户目录下的.bashrc和.bash_profile文件,在两个文件的末尾都追加如下配置:
      export FORTIFY_HOME=/你查到的Fortify安装根目录(即bin目录的上一级)
      export PATH=$PATH:$FORTIFY_HOME/bin
      
      保存后执行source ~/.bashrc和source ~/.bash_profile让配置即时生效。
    • Jenkins任务级配置(更灵活,适配集群节点场景)
      在对应扫描任务的配置页,安装启用「Environment Injector」插件,在构建步骤的环境变量配置块中,直接填入如下内容:
      PATH=$PATH:/你查到的Fortify bin目录绝对路径
      
      这种方式不需要改动系统用户的全局配置,也能避免节点shell启动模式差异导致的环境加载失效。
  3. 调整目录访问权限
    逐层检查Fortify安装路径上的每一级目录权限,必须保证US-JENKINS用户对每一级路径都有可进入(x)、可读(r)权限:
    • 如果Fortify安装在US-KIRAN的个人家目录下(比如/home/US-KIRAN/fortify),默认家目录权限通常为700,会直接拦截其他用户的访问。
    • 权限调整参考:执行sudo chmod 755 /home/US-KIRAN /home/US-KIRAN/fortify,同时为bin目录下的sourceanalyzer可执行文件赋予执行权限:sudo chmod +x /home/US-KIRAN/fortify/bin/sourceanalyzer。

配置生效验证

切换到US-JENKINS用户,执行sourceanalyzer --v,如果能正常输出对应Fortify版本信息,即代表配置完成。如果仍报错,优先核对PATH中的路径拼写是否正确、逐级目录权限是否满足要求。


内容的提问来源于stack exchange,提问作者Raghu Ram

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.03 12:54:04