Udostępnij za pośrednictwem


Windows PowerShell: Często zadawane pytania dla administratorów

 

Dotyczy: Office 365 for professionals and small businesses, Office 365 for enterprises, Live@edu

Ostatnia modyfikacja tematu: 2011-03-19

Oto pytania zadawane przez administratorów na temat programu Windows PowerShell i usługi Windows Remote Management (WinRM).

Gdzie mogę uzyskać więcej informacji o programie Windows PowerShell i usłudze WinRM?

Aby dowiedzieć się, jak zainstalować i skonfigurować program Windows PowerShell, a następnie połączyć się z usługą, zobacz Używanie programu Windows PowerShell w usłudze Exchange Online.

Błędy i sugerowane rozwiązania

  • Błędy podczas próby nawiązania połączenia

  • Błędy podczas próby uruchamiania poleceń

Błędy podczas próby nawiązania połączenia

Błąd Sugerowane rozwiązanie

Odmowa dostępu

Sprawdzić, czy poświadczenia używane do nawiązania połączenia są prawidłowe.

Klient WinRM nie może obsłużyć żądania. Klient nie może określić typu treści odpowiedzi HTTP zwróconej przez komputer docelowy. Brak typu treści lub jest on nieprawidłowy.

Sprawdź, czy konto użytkownika ma uprawnienia do łączenia się z usługą chmurową za pomocą programu Windows PowerShell. Aby uzyskać więcej informacji, zobacz Kontrola dostępu użytkowników do usługi Zdalne zarządzanie systemem Windows.

Dodatek PowerShell nie obsługuje wersji protokołu żądanej przez klienta. Upewnij się, że klient jest zgodny z kompilacją <numer kompilacji> dodatku PowerShell.

Zainstalowano nieprawidłową wersję narzędzia Windows PowerShell. Aby zainstalować pakiet Windows Management Framework zawierający odpowiednią wersję narzędzia Windows PowerShell, zobacz Instalacja i konfiguracja programu Windows PowerShell.

Powłoka zdalna systemu Windows nie może przetworzyć żądania; nie znaleziono wartości selektora <GUID> określonej w żądaniu.

Zainstalowano nieprawidłową wersję usługi WinRM. Aby zainstalować pakiet Windows Management Framework zawierający odpowiednią wersję narzędzia WinRM, zobacz Instalacja i konfiguracja programu Windows PowerShell.

Klient WinRM nie może obsłużyć żądania. Klient WinRM próbował użyć mechanizmu uwierzytelniania negocjowanego, ale komputer docelowy zwrócił błąd odmowy dostępu. Dopuszczalne mechanizmy uwierzytelniania zgłoszone przez serwer: podstawowy.

Połączenie wymaga uwierzytelniania podstawowego. Taki błąd oznacza, że usługa WinRM nie została skonfigurowana w sposób zezwalający na uwierzytelnianie podstawowe. Aby uzyskać więcej informacji, zobacz Instalacja i konfiguracja programu Windows PowerShell.

Operacja we/wy została przerwana z powodu zakończenia wątku lub żądania aplikacji.

Po pierwsze, aby uzyskać więcej szczegółów, od razu po wystąpieniu błędu uruchom następujące polecenie:

$Error[0].Exception | Format-List * -Force

Rezultat działania tego polecenia może być następujący: ErrorRecord : Connecting to remote server failed with the following error message: WS-Management cannot process the request. The operation failed because of an HTTP error. The HTTP error (12007) is: The server name or address could not be resolved.

Ten błąd może oznaczać, że komputer lokalny jest chroniony przez serwer Microsoft Internet Security and Acceleration (ISA). Jeśli to prawda, należy zmodyfikować konfigurację komputera lokalnego. Oto odpowiednia procedura:

  1. Zainstaluj klienta zapory firmy Microsoft.

  2. Jeśli zainstalowanie klienta zapory nie pomogło, sprawdź ustawienia serwera proxy HTTP na komputerze lokalnym, uruchamiając następujące polecenie:

    netsh winhttp show proxy

    Rezultat działania polecenia może być następujący:

    Current WinHTTP proxy settings:
        Direct access (no proxy server).
  3. Jeśli na komputerze lokalnym nie określono serwera proxy HTTP, należy to zrobić, uruchamiając następujące polecenie:

    netsh winhttp set proxy <proxy server name>:80 "<local>"

    Jeśli na przykład nazwa serwera proxy organizacji to proxy1, uruchom następujące polecenie:

    netsh winhttp set proxy proxy1:80 "<local>"

    Po uruchomieniu polecenia w celu skonfigurowania serwera proxy powinien pojawić się komunikat zawierający następujące informacje:

    Current WinHTTP proxy settings:
        Proxy Server(s) :  proxy1:80
        Bypass List     :  local

Błędy podczas próby uruchamiania poleceń

Błąd Sugerowane rozwiązanie

Polecenia cmdlet nagle przestały działać. Co jest nie tak?

Jeśli po nawiązaniu połączenia z organizacją chmurową aplety nie działają, połączenie może zostać przerwane z powodu wystąpienia błędu sieci lub innych problemów.

Jeśli na przykład uruchomisz następujące polecenie:

Get-Mailbox

Mogą wystąpić następujące błędy:

  • Error processing data from remote server using WinRMReceiveShellOutputEx api.

  • Cannot bind parameter 'ConfigurationName'. Cannot convert value "-System.Management.Automation.Remoting.RemoteSessionInfo" to type "System.Management.Automation.Remoting.RemoteSessionInfo".

W takim wypadku należy przywrócić połączenie, postępując zgodnie z instrukcjami w temacie Łączenie programu Windows PowerShell z usługą.

Potok przetwarzania nie został uruchomiony, ponieważ działa już inny potok. Potoków przetwarzania nie można uruchamiać współbieżnie.

Błąd ten pojawia się przy wysyłaniu danych wyjściowych apletu polecenia do polecenia foreach, które również korzysta z apletu polecenia. Na przykład:

Get-Mailbox | foreach {Set-Mailbox $_.Name -CustomAttribute1 "Student"}

Nie można uruchomić więcej niż jednego potoku jednocześnie. Rozwiązaniem tego problemu jest zapisanie wyników pierwszego apletu polecenia w zmiennej i przesłanie jej do polecenia foreach. Na przykład:

$Mailboxes = Get-Mailbox
$Mailboxes | foreach {Set-Mailbox $_.Name -CustomAttribute1 "Student"}

Nie można załadować skryptu <nazwa skryptu>, ponieważ wykonywanie skryptów jest w tym systemie wyłączone.

Zasada zdalnego wykonywania narzędzia Windows PowerShell musi mieć wartość RemoteSigned. Aby uzyskać więcej informacji, zobacz Instalacja i konfiguracja programu Windows PowerShell.