別のシステムへのリモート接続を確立し、いくつかの基本的なコマンドを実行しようとしました。
以下は私が行ったステップです:
1 .Invoke-Command -ComputerName COMPUTERNAME -ScriptBlock { Get-ChildItem C:\ } -credential USERNAME
。
2 .Invoke-Command -ComputerName COMPUTERNAME -ScriptBlock { Get-ChildItem C:\ } -credential $Credentials
。
3 .Invoke-Command -ComputerName COMPUTERNAME -ScriptBlock { Get-ChildItem C:\ }
すべてのケースで、アクセス拒否エラーが発生していました。
Access is denied. For more information, see the about_Remote_Troubleshooting Help topic. + CategoryInfo : OpenError: (:) [], PSRemotingTransportException
+ FullyQualifiedErrorId : PSSessionStateBroken
から [〜#〜] msdn [〜#〜] :
Windows PowerShellショートカットを右クリックし、[管理者として実行]を選択して、Windows PowerShellを管理者として起動します。
WinRMサービスは、デフォルトで手動起動用に構成されています。スタートアップの種類を[自動]に変更し、使用する各コンピューターでサービスを開始する必要があります。 PowerShellプロンプトで、次のコマンドを使用してWinRMサービスが実行されていることを確認できます。get-service winrm出力のStatusプロパティの値は「Running」である必要があります。
Windows PowerShellをリモート処理用に構成するには、次のコマンドを入力します。Enable-PSRemoting –force
多くの場合、他のドメインのリモートコンピュータを操作できます。ただし、リモートコンピューターが信頼されたドメインにない場合、リモートコンピューターは資格情報を認証できない可能性があります。認証を有効にするには、リモートコンピューターをWinRMのローカルコンピューターの信頼できるホストのリストに追加する必要があります。これを行うには、次のように入力します。winrm s winrm/config/client '@ {TrustedHosts = "RemoteComputer"}'ここで、RemoteComputerは次のようにリモートコンピューターの名前にする必要があります。winrm s winrm/config/client '@ {TrustedHosts = "CorpServer56"} '
winrm
が実行されているかどうかを確認する必要があります。また、リモートホストを信頼できるホストのリスト(またはローカルマシン)に追加します。
お役に立てば幸いです。