我有一个典型的Keberos Double Hop错误。我遇到了一个简单的代码。
我想从一台中央服务器远程启动带有scheduldjob的几台服务器。但是,应重新启动的服务器及其重新启动时间存储在Centralserver上的csv文件中。一旦我调用,我就会进行第一跳,而第二跳是我需要读取csv之后立即发生的。
我有点发现使用2个splitet脚本的解决方法。但是我得到了错误
调用命令:无法加载文件\ svkev01 \ C $ \ CSV \ Run2.ps1 因为您选择不立即运行此软件。
我确实更改了GPO Global的读取和运行每个脚本的权限 我也尝试在脚本运行中不受限制地使用Policy,但是它没有改变任何内容。 因此,我需要您的帮助
复制代码:
首次尝试(双跳问题)
$listofserver = Import-Csv -Path "\\centralserver\servertorestart.csv" -UseCulture
Foreach ($server in $listofserver)
{
$servername = $server.name
#hop 1
Invoke-Command -ComputerName $servername -ScriptBlock{
#hop 2
$listofserver = Import-Csv -Path "\\centralserver\servertorestart.csv" -UseCulture
$servername = $server.name
[datetime]$tasktime = $server.time
$T = New-JobTrigger -Once -At $tasktime
Register-ScheduledJob -Name "Scheduled Server Restart" -Trigger $T -ScriptBlock{
Restart-Computer -ComputerName $servername
write-host "Server $servername restarded"
}
}
}
双重脚本(称为错误提示)
脚本1
Set-ExecutionPolicy unrestricted
$listofserver = Import-Csv -Path "\\centralserver\servertorestart.csv" -UseCulture
$servern = $listofserver.name
$s = New-PSSession -ComputerName $servern -Credential Domain\Administrator
Foreach ($server in $listofserver)
{
#hop 1
Invoke-Command -Session $s -FilePath "\\centralserver\Run2.ps1"
}
脚本2
Set-ExecutionPolicy unrestricted
$listofserver = Import-Csv -Path "\\centralserver\servertorestart.csv" -UseCulture
Foreach ($server in $listofserver)
{
$servername = $server.name
[datetime]$tasktime = $server.time
$T = New-JobTrigger -Once -At $tasktime
Register-ScheduledJob -Name "Scheduled Server Restart" -Trigger $T -ScriptBlock{
Restart-Computer -ComputerName $servername -Force
write-host "Server $servername restarded"
}
}