, 나는 다음과 같은 실행되는 PowerShell 스크립트를 가지고 실행중인 서버에서 예약 된 작업, 마지막 작업 결과 및 마지막 실행 시간 이를위한 목적은 경보에 사용할 수있는 모니터링 솔루션 (Geneos)에 데이터 세트를 반환하는 것입니다.배치 파일, 파워 쉘 스크립트, PsExec를 및 시스템 사용자 내가 자리에 Windows 작업 스케줄러에 대한 몇 가지 모니터링을 넣어려고
우리는 큰 Win2008 영역을 가지고 있기 때문에 스크립트를 중앙화하여 Geneos 프로브가 호출하고 호스트에 대한 데이터 세트를 반환 할 수있게하고 싶습니다. 로컬
\\fileserverhk\psexec.exe -accepteula -u admin -p "pwd" powershell.exe cpi \\fileserverhk\scripts\TaskSchedulerMonitor.ps1 -Destination C:\Monitor\TaskSchedulerMonitor.ps1
\\fileserverhk\psexec.exe -accepteula -u admin -p "pwd" powershell.exe -ExecutionPolicy Bypass -File C:\Monitor\TaskSchedulerMonitor.ps1
첫 번째 단계 복사이 .ps1 파일이 UNC 경로를 신뢰하지 PowerShell을 극복하고 두 번째 부분은 스크립트를 실행 이렇게하려면 나는 다음을 수행하는 .bat 파일에서 PowerShell을 감쌌다.
테스트 서버에서 .bat 파일을 수동으로 실행하면 관리자 계정으로 로그인 한 상태로 잘 실행됩니다. 나는 (시스템 계정으로 실행) Geneos를 통해 박쥐 파일을 불 때, 내가 얻을 :
Access is denied.
PsExec could not start powershell.exe:
그래서 기본적으로 내 질문에, 그것은이 시스템에서 실행 때 나는 PsExec를 사용자를 전환 얻는 방법 계정? PsExec는 다른 계정에 대한 자격 증명을 설정 했음에도 분명히 시스템에서 실행될 때 PsExec이 변경되지 못하도록하는 것입니다.
은 내가 -h 스위치를 실행하려고 읽을 수 있지만 나는 아래의 오류 얻을 :
위의 오류 외에도The handle is invalid.
Connecting to local system...
Starting PsExec service on local system...
Connecting with PsExec service on <server>...
Starting powershell.exe on <server>...
Error communicating with PsExec service on <server>:
, 내가 PsExec를 끝낼과 파워 쉘 프로세스가에 걸려를 원격 기계. 흥미로운 부분은 PSExec 및 PSEXEC.SVC가 SYSTEM에서 실행되고 PowerShell이 관리자 아래에서 실행되는 것을 볼 수 있기 때문에 거의 다 왔지만 뭔가 올바르지 않습니다.
+1 흥미로운 질문입니다. 내가 대답 할 수 있다고 생각하지만 먼저 Geneos (이전에는 들어 보지 못했다 ...)와 같이 실행해야하지만 PowerShell 명령을 CMD와 같은 간단한 명령으로 바꾸면 네트워크를 탐색하지 않습니다. 작동하지 않으면 PSEXEC 문 바로 뒤에 * -s *를 추가하여 PSEXEC이 시스템 계정으로 실행되는지 확인하십시오. 또한, 나는 긍정적이지 않다 PSEXEC은 */* 대신에 'accepteula'앞에 * - *를 달 수있다. 두 가지 방법 모두 시도하고 싶을 수도있다. – Lizz
의견에 감사드립니다. 나는 psexec을 사용하여 cmd.exe 프로세스를 스핀 업 할 수 있음을 확인할 수 있으며, 원래의 admin 계정 (** - h **을 제공 한 경우) 또는 시스템 (** - s ** 사용)을 사용하지 않고 실행할 수 있습니다. 문제. .ps1 스크립트를 로컬로 복사하는 원본 PSEXEC이 로컬로 작동한다는 것을 잊어 버렸습니다. 나는/그리고 - 모두 acceptedula를 시도해 보았습니다. 그리고 두 가지 모두 괜찮아 보입니다. 이것은 처음 실행했을 때만 적용됩니다. (원래는 psExec 프로세스에서 보았던 초기 문제를 해결했습니다.EULA가 백그라운드에서 나타나서 승인되지 않음) – Phlebass
powershell remoting iso psexec을 사용하지 않은 특별한 이유가 있습니까? –