Question
Déployer un KB sur plusieurs hosts
- Vincent33
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 5
- Remerciements reçus 0
il y a 10 ans 5 mois #20821
par Vincent33
Déployer un KB sur plusieurs hosts a été créé par Vincent33
Bonjour,
je débute en PowerShell, et j'aimerai chercher à comprendre l'erreur de mon script.
Je suis en train de faire un script pour déployer un seul KB uniquement sur des machines 2008 R2.
J'ai fais un fichier server.txt avec la liste des machines concernés
Contenu server.txt =
MACHINE1
MACHINE2
MACHINE3
J'aimerais déployer ce KB sur toutes les machines en une fois mais le script ne me sort que la liste des machines. Pouvez-vous m'aiguillez afin de corriger cette erreur?
[code:1]$EmplacementFichier = 'C:\temp\server.txt'
$MonFichier = get-content $EmplacementFichier
foreach ($UneLigne in $MonFichier){
Write-Host $UneLigne
}
$SCRIPT = { Start-Process -FilePath 'dism.exe' -ArgumentList \"/Online /Add-Package /PackagePath:\\MACHINE99\c$\Temp\KB2680097\Windows6.1-KB2680097-v2-x64.cab /Quiet /NoRestart\" }
Invoke-Command -ComputerName $UneLigne -ScriptBlock $SCRIPT [/code:1]
Merci
Message édité par: Vincent33, à: 6/10/15 15:08<br><br>Message édité par: Vincent33, à: 7/10/15 09:51
je débute en PowerShell, et j'aimerai chercher à comprendre l'erreur de mon script.
Je suis en train de faire un script pour déployer un seul KB uniquement sur des machines 2008 R2.
J'ai fais un fichier server.txt avec la liste des machines concernés
Contenu server.txt =
MACHINE1
MACHINE2
MACHINE3
J'aimerais déployer ce KB sur toutes les machines en une fois mais le script ne me sort que la liste des machines. Pouvez-vous m'aiguillez afin de corriger cette erreur?
[code:1]$EmplacementFichier = 'C:\temp\server.txt'
$MonFichier = get-content $EmplacementFichier
foreach ($UneLigne in $MonFichier){
Write-Host $UneLigne
}
$SCRIPT = { Start-Process -FilePath 'dism.exe' -ArgumentList \"/Online /Add-Package /PackagePath:\\MACHINE99\c$\Temp\KB2680097\Windows6.1-KB2680097-v2-x64.cab /Quiet /NoRestart\" }
Invoke-Command -ComputerName $UneLigne -ScriptBlock $SCRIPT [/code:1]
Merci
Message édité par: Vincent33, à: 6/10/15 15:08<br><br>Message édité par: Vincent33, à: 7/10/15 09:51
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 10 ans 5 mois #20822
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Déployer un KB sur pkusieurs hosts
Salut,
ton script fait ce que tu lui demandes.
Insère l'appel de invoke-command dans la boucle Foreach, déplace la déclaration de $Script AVANT la boucle, si toutefois elle est identique pour chaque serveur, enfin le paramètre -Argumentlist contient une substitution ($temp) est-ce volontaire ?<br><br>Message édité par: Laurent Dardenne, à: 6/10/15 14:49
ton script fait ce que tu lui demandes.
Insère l'appel de invoke-command dans la boucle Foreach, déplace la déclaration de $Script AVANT la boucle, si toutefois elle est identique pour chaque serveur, enfin le paramètre -Argumentlist contient une substitution ($temp) est-ce volontaire ?<br><br>Message édité par: Laurent Dardenne, à: 6/10/15 14:49
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vincent33
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 5
- Remerciements reçus 0
il y a 10 ans 5 mois #20824
par Vincent33
Réponse de Vincent33 sur le sujet Re:Déployer un KB sur pkusieurs hosts
Bonjour,
DLe seul résultat est qu'il me liste les noms de serveurs du fichier server.txt.
Quand je veux vérifier que mon KB est installé, il ne l'est pas
[code:1]get-hotfix -id KB2680097 -computername MACHINE1[/code:1]<br><br>Message édité par: Vincent33, à: 7/10/15 11:30
DLe seul résultat est qu'il me liste les noms de serveurs du fichier server.txt.
Quand je veux vérifier que mon KB est installé, il ne l'est pas
[code:1]get-hotfix -id KB2680097 -computername MACHINE1[/code:1]<br><br>Message édité par: Vincent33, à: 7/10/15 11:30
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 10 ans 5 mois #20827
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Déployer un KB sur pkusieurs hosts
Merci pour les balises code 
Ton code fonctionne, mais le process doit être supprimé dés la fin de ton appel WinRM, l'usage du paramètre -Wait serait le bienvenu, ainsi que le contrôle du code erreur
Ton code fonctionne, mais le process doit être supprimé dés la fin de ton appel WinRM, l'usage du paramètre -Wait serait le bienvenu, ainsi que le contrôle du code erreur
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vincent33
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 5
- Remerciements reçus 0
il y a 10 ans 5 mois #20829
par Vincent33
Réponse de Vincent33 sur le sujet Re:Déployer un KB sur pkusieurs hosts
Merci pour ton aide Laurent
[code:1]$EmplacementFichier = 'C:\temp\server.txt'
$MonFichier = get-content $EmplacementFichier
$SCRIPT = { Start-Process -FilePath 'dism.exe' -ArgumentList \"/Online /Add-Package /PackagePath:\\MACHINE99\c$\Temp\KB2680097\Windows6.1-KB2680097-v2-x64.cab /Quiet /NoRestart\" -Wait -RedirectStandardOutput C:\Temp\KBUpdateOutput.txt }
foreach ($UneLigne in $MonFichier){
Write-Host $UneLigne
Invoke-Command -ComputerName $UneLigne -ScriptBlock $SCRIPT
}[/code:1]
Effectivement, j'ai bien une erreur :
Error: 3
The system cannot find the path specified.
Alors que j'accède bien à mon partage depuis la machine ou je veux installer le KB.
[code:1]$EmplacementFichier = 'C:\temp\server.txt'
$MonFichier = get-content $EmplacementFichier
$SCRIPT = { Start-Process -FilePath 'dism.exe' -ArgumentList \"/Online /Add-Package /PackagePath:\\MACHINE99\c$\Temp\KB2680097\Windows6.1-KB2680097-v2-x64.cab /Quiet /NoRestart\" -Wait -RedirectStandardOutput C:\Temp\KBUpdateOutput.txt }
foreach ($UneLigne in $MonFichier){
Write-Host $UneLigne
Invoke-Command -ComputerName $UneLigne -ScriptBlock $SCRIPT
}[/code:1]
Effectivement, j'ai bien une erreur :
Error: 3
The system cannot find the path specified.
Alors que j'accède bien à mon partage depuis la machine ou je veux installer le KB.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 10 ans 5 mois #20830
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Déployer un KB sur pkusieurs hosts
Vincent33 écrit:

Pour l'accès au share ajoute sur l'appel à Invoke-Command. e paramètre EnableNetworkAccess .
Comme quoi la gestion d'erreur n'est pas une optionEffectivement, j'ai bien une erreur :
Pour l'accès au share ajoute sur l'appel à Invoke-Command. e paramètre EnableNetworkAccess .
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.050 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Déployer un KB sur plusieurs hosts