Erreur InvalidShellID dans RPS dans Microsoft 365
Numéro de la base de connaissances d’origine : 3090768
Symptômes
Lorsqu’un script est en cours d’exécution longue ou lorsque vous exécutez une applet de commande d’administration dans Remote PowerShell (RPS) dans Microsoft 365, vous recevez par intermittence un message d’erreur semblable au suivant :
Le traitement des données pour une commande distante a échoué avec le message d’erreur suivant :
[ClientAccessServer=Server1,BackEndServer=Server2,RequestId=<>,TimeStamp=DateTime] [FailureCategory=WSMan-InvalidShellID] La demande pour l’interpréteur de commandes distant Windows avec ShellId <> a échoué, car l’interpréteur de commandes est introuvable sur le serveur. Causes possibles : la ShellId spécifiée est incorrecte ou l’interpréteur de la Shell n’existe plus sur le serveur. Fournissez les ShellId correctes ou créez un nouveau shell et recommencez l’opération. Pour plus d’informations, consultez la rubrique d’aide about_Remote_Troubleshooting.+ CategoryInfo : OperationStopped : (mail.contoso.com :String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : JobFailure
+ PSComputerName : mail. contoso.com
Cause
Ce problème se produit si les conditions suivantes sont remplies :
- Vous utilisez un compte associé à un utilisateur à extension messagerie (MEU) dans un environnement multirégion.
- Connections sont routées via une région différente de la région de l’utilisateur.
Cette erreur peut se produire lorsqu’un serveur principal est supprimé de la rotation pour être mis à niveau. En outre, ce problème se produit rarement.
Résolution
Scénario 1 - Lorsqu’un script s’exécute longtemps ou lorsque le flux de travail automatisé s’arrête
Dans ce scénario, vous devrez peut-être modifier le script pour qu’il se reconnecte automatiquement si un serveur est supprimé de la rotation pendant qu’il est en cours. Pour ce faire, utilisez la gestion des erreurs appropriée dans le script pour intercepter les erreurs. Ensuite, reconnectez-vous et redémarrez les processus.
Scénario 2 - Quand vous exécutez une applet de commande d’administration dans RPS
Dans ce scénario, vous devez réexécuter l’applet de commande . Un autre serveur principal doit être contacté, puis l’applet de commande doit s’exécuter correctement.
Remarque
Dans un déploiement multirégion Exchange Online, nous vous recommandons d’utiliser des comptes d’administration compatibles avec la boîte aux lettres. Cela permet de s’assurer que les connexions RPS sont établies via l’environnement actuel. Si le compte d’administration est associé à une meU, les connexions peuvent être routées via l’autre région. Ce comportement peut retarder la connexion ou déclencher des erreurs.
Microsoft peut avoir besoin d’une trace Fiddler pour examiner ce problème. Si nécessaire, un ingénieur du support envoie un package de diagnostics de support pour capturer et charger ces informations en toute sécurité. Pour capturer ces informations dans la trace Fiddler, vous devez ajouter une option de session PowerShell avec le ProxyAccessType
paramètre défini sur IEConfig. Par exemple :
Import-PSSession (New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://mail.contoso.com/powershell -Credential (Get-Credential) -Authentication Basic -AllowRedirection -SessionOption (New-PSSessionOption -ProxyAccessType IEConfig))
Informations supplémentaires
Pour plus d’informations sur la gestion des erreurs, consultez Weekend Scripter : Using Try, Catch, Finally blocks for PowerShell error handling.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour