Correction de l'erreur WinRM: Index d'identification de flux invalide
Description de l'erreur
Cette erreur se produit pendant Windows Remote Management (WinRM) Il se produit généralement lorsque l'on utilise PowerShell Remoting ou des outils comme Ansible et Jenkins.
The error triggers because the WinRM client and server get out of sync during data transmission. Specifically, the client sends a data packet with a stream ID index Ce déséquilibre est généralement causé par:
- Corrupted WinRM sessions accroché à l'arrière-plan.
- Outdated PowerShell versions entre les machines locales et distantes.
- Size limits sur le dépassement du paquet de demande WinRM.
- Corrupted WinRM configurations sur la machine hôte.
Réparations étape par étape
Suivez ces étapes pour résoudre le problème.
Étape 1: redémarrer le service WinRM
La solution la plus rapide est de vider les sessions distantes suspendues en redémarrant le service de gestion.
- Ouvrez la porte. Start Menu.
- Quel type ?
cmd, cliquez avec le bouton droit. Command Prompt, et sélectionnez Run as administrator. - Tapez la commande suivante et appuyez Enter:
net stop winrm - Tapez la commande suivante et appuyez Enter pour recommencer:
net start winrm
Étape 2: Augmenter la taille maximale de l'enveloppe WinRM
Si vos scripts envoient de gros blocs de données, le paquet pourrait être tronqué et corrompu.
- Gardez votre administrateur. Command Prompt Je vous ouvre.
- Exécutez cette commande pour vérifier votre configuration actuelle:
winrm get winrm/config - Exécutez cette commande pour augmenter la taille maximale de l' enveloppe à 8192 KB:
winrm set winrm/config @{MaxEnvelopeSizekb="8192"}
Étape 3: Augmenter la mémoire maximale par shell
Une allocation de mémoire faible pour les shells distants peut entraîner une défaillance soudaine du flux de données.
- Dans l'administrateur. Command Prompt, exécutez la commande suivante:
winrm set winrm/config/winrs @{MaxMemoryPerShellMB="2048"} - Redémarrez le service WinRM pour appliquer les modifications:
net stop winrm && net start winrm
Étape 4: réenregistrer et réinitialiser la configuration WinRM
Si les paramètres de configuration sont corrompus, vous pouvez réinitialiser l'ensemble de la configuration WinRM aux paramètres par défaut.
- Ouvrez. PowerShell comme un Administrator.
- Exécutez cette commande pour réinitialiser complètement les configurations du service WinRM:
winrm quickconfig -q - Si vous configurez un environnement sécurisé, assurez-vous que votre configuration autorise les connexions à distance en exécutant:
Enable-PSRemoting -Force
Étape 5: Mettre à jour le cadre de gestion de Windows (WMF)
Ensure both the source machine and the target machine are running compatible versions of PowerShell.
- Vérifiez votre version actuelle en exécutant ceci dans PowerShell:
$PSVersionTable.PSVersion - If either machine is running an older version (like PowerShell 4.0 or lower), download and install the latest Windows Management Framework ou... PowerShell 7+ sur le site officiel de Microsoft.
Il y a peut-être des erreurs.. Learn Microsoft