You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins Windows XP代理节点无法切换至共享驱动器求助

Jenkins Windows XP代理节点工作区目录问题解决

一、流水线卡在c:\windows的原因

  • Jenkins Windows代理默认以系统服务身份运行,服务账户处于会话0,看不到登录用户映射的网络驱动器(比如你设的F:),所以执行F:会提示找不到驱动器。
  • 没有强制流水线固定在c:\windows的默认配置,但如果代理服务的工作目录设为c:\windows,或者节点工作区配置错误,流水线就会默认在系统目录运行。

二、可行的解决办法

1. 直接用UNC路径访问共享文件夹

跳过盘符映射,直接使用共享文件夹的网络路径,比如:

cd \\主机名\共享工作区目录

只要Jenkins代理的运行账户有该共享的访问权限,就能直接进入目标目录。

2. 改Jenkins代理的运行身份

把代理从系统服务改成登录用户身份运行:

  • 打开Windows服务管理器,找到Jenkins代理服务
  • 右键选「属性」→「登录」标签页,选择「此账户」,输入能访问共享文件夹的本地/域账户和密码
  • 重启代理服务,之后该用户映射的驱动器就能在流水线里正常访问了

3. 流水线里临时挂载共享(用net use)

如果不想改服务运行方式,可在流水线开头用命令手动挂载:

net use F: \\主机名\共享文件夹名 /user:你的账户 你的密码
F:

用完后可以执行net use F: /delete卸载挂载。

4. 检查节点工作区配置

进入Jenkins后台→「管理Jenkins」→「管理节点和云」→找到你的Windows XP节点→「配置」,确认「工作区根目录」设为共享文件夹的UNC路径(比如\\主机名\共享工作区),设置正确的话,流水线会默认在该目录执行,不用手动切换。

三、为什么pushd/popd没用?

pushd虽然能临时挂载共享,但Jenkins代理以服务身份运行时,受会话权限限制,无法创建临时盘符,所以这种方法不生效。

内容的提问来源于stack exchange,提问作者Ruslan Sinyavsky

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 13:45:28