원격 서버에서 powershell 스크립트를 실행할 수 없지만 현재 컴퓨터에서만 실행할 수 있습니다. 도와주세요.
다음 스크립트를 실행하여 원격 서버의 임시 디렉토리 목록을 제공하면 다른 컴퓨터에서 자격 증명이있는 동일한 서버로 작동하지만 내 컴퓨터의 모든 사용자에게는 작동하지 않습니다.
Invoke-Command -ComputerName <server_name> -Credential (Get-Credential) -ScriptBlock { Get-ChildItem "D:\temp" }
다음과 같은 오류가 발생합니다.
[server_name] 다음 오류 메시지와 함께 server_name 원격 서버에 연결하지 못했습니다. 로그온 실패 : 알 수없는 사용자 이름 또는 암호가 잘못되었습니다. 자세한 내용은 about_Remote_Troubleshooting 도움말 항목을 참조하십시오. + CategoryInfo : OpenError : (server_name : String) [], PSRemotingTransportException + FullyQualifiedErrorId : LogonFailure, PSSessionStateBroken
- 예, ad : drive가 있습니다.
- 예, 임시 디렉토리가 있습니다
- 예, 자격 증명이 좋습니다. 서버에 원격 데스크톱을 연결할 수 있으며 다른 컴퓨터에서 스크립트를 성공적으로 실행할 수 있습니다.
http://www.microsoft.com/en-us/download/details.aspx?id=34595 에서 다운로드 한 powershell 3을 실행 중이며 성공적으로 설치되었습니다.
내 노트북에서 $ PsVersionTable을 호출하면 다음과 같은 결과를 얻을 수 있습니다.
이름 값
—- —–WSManStackVersion 3.0
PSCompatibleVersions {1.0, 2.0, 3.0}
직렬화 버전 1.1.0.1
빌드
버전 6.2.9200.16398 PS 버전 3.0
CLR 버전 4.0.30319.586
PSRemotingProtocolVersion 2.2
Windows 7을 실행 중이고 서버에서 Windows 2003을 실행 중입니다. Powershell 3이 Windows 2003 서버와 잘 작동하지 않는다는 것을 알고 있지만 위의 명령은 다른 클라이언트 컴퓨터에서 성공적으로 실행되므로 이것이 문제라고 생각하지 마십시오.
어떤 아이디어?
답변
따라서 추가 진단 테스트 (다른 컴퓨터에 로그온하여 동일한 랩톱의 다른 OS 설치로 부팅) 후 다음 명령을 실행해야했습니다.
Set-Item WSMan:\localhost\Client\TrustedHosts -value *
또한 추가 조사를 수행하는 동안 원격 powershell 문제가있는 다른 사람들을 도울 수있는 이 사이트 를 찾았 습니다 (참조 게시).
답변
Windows Server 2003에서 PowerShell v2.0을 사용하고 서버에서도 WINRM 2.0을 사용한다고 가정합니다. 이 경우 PowerShell v3.0 WINRM은 Window Server 2003에 연결해야합니다.
“WestDiscGolf”노트에 설명 된대로 서버에서 Enable-PSRemoting을 실행해야합니다. 또한 Windows 7 클라이언트에서 방화벽 규칙을 확인해야합니다.
다시 시도하십시오. 🙂