Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scripting psexec的嵌套调用问题(访问被拒绝)_Scripting_Batch File_Cluster Analysis_Psexec - Fatal编程技术网

Scripting psexec的嵌套调用问题(访问被拒绝)

Scripting psexec的嵌套调用问题(访问被拒绝),scripting,batch-file,cluster-analysis,psexec,Scripting,Batch File,Cluster Analysis,Psexec,首先,对不起,我的英语很差。我会尽力解释我的问题 我在脚本中使用psexec重新启动集群,如下所示: node1中的script1:在node1中执行大量任务(关闭服务、检查状态等),并在使用psexec完成所有任务启动后,在node2中执行script2(psexec-d\\node2 script2) node2中的script2:在node1中执行大量任务并启动script3。下面是当我尝试在node1中运行script3时,在psexec中收到“拒绝访问”的消息。(psexec-d\\n

首先,对不起,我的英语很差。我会尽力解释我的问题

我在脚本中使用psexec重新启动集群,如下所示:

node1中的script1:在node1中执行大量任务(关闭服务、检查状态等),并在使用psexec完成所有任务启动后,在node2中执行script2(psexec-d\\node2 script2)

node2中的script2:在node1中执行大量任务并启动script3。下面是当我尝试在node1中运行script3时,在psexec中收到“拒绝访问”的消息。(psexec-d\\nodo1脚本3)

我使用属于administrators组的用户启动脚本

出于安全原因,我无法传递用户名和密码,因为将凭据保留在.bat文件中是不安全的

其他信息:

我正在W2k3服务器上运行脚本 我试过上网,一切正常 我用-u用户名和-p用户名尝试了psexec,一切正常 我尝试使用以下语法执行psexec:psexec.exe-d\node1 cmd.exe“script3.bat”,并返回相同的错误

太多了
致以最诚挚的问候

这可能与使用集成身份验证的链接服务器跳数过多有关-a

由于集成Windows身份验证涵盖两种独立的身份验证机制:

  • NTLM v2-和-
  • Kerberos
如果使用Kerberos,由于用户的密码从未传递到IIS服务器,IIS服务器上的令牌跳到网络上另一台机器的唯一方式是通过Kerberos委派。如果这是不可用或不允许的,那么跳转就不会发生(这听起来像是正在发生的事情)

假设您使用的是默认凭据,并且当前安全上下文是无法委派的模拟令牌,则您提供的凭据将不会跳转到 另一台机器。 由于Windows集成身份验证会创建模拟令牌,因此很可能会出现这种情况

资料来源:


您是否可以让对script2的调用等待完成,而不是让script2回拨到节点1:

节点1中的脚本1:执行大量 任务(关闭服务,检查 节点1和之后的状态等 使用psexec完成所有任务启动 node2中的脚本2(psexec\\node2 脚本2)

节点2中的脚本2:执行大量 任务

节点1中的脚本1:启动脚本3


最后,我决定在第二个脚本中使用看门狗进程,因此该脚本将由该进程启动,而不是由psexec启动

非常感谢你的帮助和你花时间帮助我

致意