我有一个问题写入使用Hudson的远程磁盘。 当我手动写入,它的工作。
两台电脑暗示:一台是Windows XP,另一台是Mac mini服务器。 需要远程访问的磁盘位于Mac上。 我成功了以下几点:
但是,当哈德森运行我编写的脚本编写的东西在挂载文件夹,它失败,说
BUILD FAILED C:\path\to\build.xml:62: Directory Z:\mac\path creation was not successful for an unknown reason
我可以从同一台计算机(远程)创buildZ:\ MAC \path,它工作得很好。 实际上,该目录已经存在,但是我希望它能够在删除的情况下尝试创build它。 我在本地磁盘上做同样的事情,从不抱怨(目录是否存在)。
相应的Ant指令将会是
<mkdir dir="Z:/mac/path/"/>
我会怀疑某种types的许可问题。 不太确定。 在计算机上安装磁盘的用户不是SYSTEM …而Hudson是由“他”运行的。 WinXP计算机上的用户名与用于安装远程文件系统(NTFS)的Mac用户无关。
我能做些什么? 它很好地安装为Z :. 我可以浏览和编辑它没有问题。 这条线仍然不能在哈德逊计算(虽然它通过C :)。 我不认为有可能使用SYSTEM装载它…请帮助!
我刚刚解决了类似的问题,所以希望这个解决scheme适合你…但已经9个月,所以也许会帮助下一个人。 基本的问题是,如果Tomcat作为一个服务运行,你的脚本将以SYSTEM的身份执行。
打开一个cmd提示符作为SYSTEM进行testing(从现在开始设置时间到一分钟)
at 12:34 /interactive "cmd.exe"
考试…
C:\.jenkins\jobs\test\workspace>dir \\remotemachine\folder Access is denied.
通过将驱动映射为具有足够权限的用户来解决(在这种情况下,写访问)
NET USE z: \\remotemachine\folder password /USER:username\domain
WinXP计算机上的用户名与用于安装远程文件系统(NTFS)的Mac用户无关。
尝试在两个系统上使用相同的用户名/密码创build一个帐户,然后使用Hudson过程(或者如果以这种方式安装了Hudson过程),则以该用户身份运行。
另一种方法是使用KCD提到的'NET USE'命令,但是/ USER参数选项是域\用户名而不是用户名\域。
我在我的环境中使用NET USE命令映射然后在NAS上写远程驱动器,所以绝对可以这样做。