none
net use sur machine distante pour application de correctifs RRS feed

  • Discussion générale

  • Bonjour à tous,

    Je cherche à installer des correctifs sur un parc de machine sous W7/W10. Actuellement j'ai développé un script pour les machines W7 et un  pour les W10, en gros je copie sur la machine distante un répertoire contenant les correctifs et je les lance via un script.

    Le souci est que pour les machines W10 je ne peux pas copier l'intégralité des correctifs des différentes version de W10 car ça me ferait 26 Go à copier à chaque fois donc j'ai fait un script par version de W10, s'il vérifie que c'est la bonne il monte un lecteur réseau avec mes identifiants via net use et lance les correctifs via le lecteur.

    Et c'est là que j'ai un souci, le lecteur se monte mais apparaît déconnecté et si je clique dessus il indique que les identifiants sont incorrects, hors si je vais directement sur la machine distante et que je lance le script de mapping du lecteur il se monte sans souci, si je le lance via mon poste d'administrateur en PSEXEC le lecteur se monte mais inaccessible et je ne comprends pas pourquoi.

    Par avance merci, je suis ouvert à toutes suggestions.

    mercredi 13 novembre 2019 11:45

Toutes les réponses

  • Bonjour, je te propose de jeter un coup d’œil sur cette solution, ça peut être utile dans ton cas:

    https://www.thewindowsclub.com/fix-mapped-network-drives-dont-work-windows-10


    "Vote or mark as answer if you think useful" "Marquer comme réponse les réponses qui ont résolu votre problème"

    mercredi 13 novembre 2019 12:55
  • Pas bon ça d'utiliser PSExec (il agit en tant que "system", autant dire qu'il a les max privilèges)

    Essaie plutot de suivre ce lien adding-multiple-windows-hotfixes-with-wusa-and-powershell

    En Principe :

    • tu colles tes hotfixes dans un partage (éventuellement caché si tu préfères, sans oublier de mettre les Acls qui vont bien)
    • Depuis un poste d'administration ou un serveur, tu fais exécuter ton script sur le poste distiant
    • Pas la peine de faire un map réseau, les chemins UNC ça passe

    Ca pourrait donner un truc comme ça.

    $Computers = import-csv -Path "Pathto\ComputersToPath.csv"
    
    foreach ($computer in $Computers)
    {
        Enter-PSSession -ComputerName $Computer # ajout -Credential si nécessaire, mais si tu as un compte d'admin sur les postes, ça le fait sans ça)
        # Là tu es dans le PS du poste distant, et maintenant on traite
        Get-Item \\serveur\share\hotfixes\* | 
            foreach {WUSA ""$_.FullName /quiet /norestart""
                while(get-process wusa)
                    {Write-Host "Installation de $_.Name sur $Computer"}
            }
    }
    Write-Host "fin des mises à jour"

    Naturellement, tout cela peut être complété par du logging, de la gestion des erreurs, ....

    Invoke-Command pourrait être également utilisé, mais si c'est bien pour une seule cmdlet à passer, ce n'est pas terrible quand on a plusieurs traitements à faire.

    Sinon, si tes postes ont accès à internet ou à un serveur WSUS interne. Utilser le module PSWindowsUpdate. La cmdlet Get-WindowsUpdate (alias Install-WindowsUpdate) s'adresse au client WSUS sur les postes et lui dit quoi faire (installer telle KB, rebooter si nécessaire et planifie même le reboot). D'autre part, la cmdlet Get-WUHistory, permet de voir l'historique de ce qui est installé, et Get-RebootStatus, le statut si la machine est en pending reboot. Pratique pour des rapports.

    Cordialement

    Olivier

    mercredi 13 novembre 2019 13:28
  • J'ai essayé avec ton script Powershell et j'obtient cela : 

    « ( » d'ouverture manquante après le mot clé « foreach ».
    Au niveau de xxxxxx\W10\W10.ps1 : 8 Caractère : 17
    +         foreach  <<<< {WUSA ""$_.FullName /quiet /norestart""
        + CategoryInfo          : ParserError: (OpenParenToken:TokenId) [], ParentContainsErrorRecordException
        + FullyQualifiedErrorId : MissingOpenParenthesisAfterKeyword

    J'ai pourtant bien renseigné les champs et et semble bien lire mon fichier csv contenant les postes.

    Petite précision, sur le poste distant, je suis bien logué en admin, je n'ai pas de lecteur de monté, j'ignore si l'exécution de Powershell est autorisé car ce sont des postes spécifiques utilisés en laboratoire, et enfin je n'ai pas d'emplacement spécifique accessible à n'importe quelle machine par défaut, il faut que soit le je le monte en ligne de commande ou Powershell en spécifiant mon accès soit je ne sais pas comment faire.

    mercredi 13 novembre 2019 15:39
  • Bonjour,

    Je te recommande de monter en compétence au plus vite sur le produit WSUS de Microsoft. C'est un rôle Windows serveur qui permet la gestion des mises à jour dans un parc informatique et qui est prévu vraiment pour ça.

    https://docs.microsoft.com/fr-fr/windows-server/administration/windows-server-update-services/get-started/windows-server-update-services-wsus

    Faire du scripting pour installé des mises à jour aujourd'hui, c'est pas mal de perte de temps...


    Merci de marquer comme reponses les interventions qui vous ont ete utile.

    mercredi 13 novembre 2019 17:23
  • Cela n'est pas possible via WSUS, les mises à jour sont bloquées et désactivées par GPO sur les postes et ils n'ont aucun accès à Internet, sinon je ne m'embêterais même pas à poster ici...

    En labo on n'a pas trop le choix que de scripter pour faire du déploiement tant les environnements sont riches et différents.

    jeudi 14 novembre 2019 08:15