Activer la prise en charge de PSGallery

<img style="”float:" right;” src="”https://www.recastsoftware.com/wp-content/uploads/2021/10/Recast-Logo-Dark_Horizontal.svg”" alt="&quot;Image&quot;" height="”43″" width="”150″">

Ajout de modules PowerShell | Prise en charge de PSGallery pour WinPE

Merci à David Segura pour avoir compris cela et créé un module pour mettre à jour votre WinPE WIM, lien en bas de la page. Si vous utilisez son processus, vous n'aurez besoin de rien de tout cela. ??

Ici, nous allons couvrir l'ajout de cette capacité sans modifier votre image de démarrage et l'activation de PSGallery pendant WinPE dans une séquence de tâches. Cela couvrira deux méthodes différentes pour activer PSGallery

Exigences de base

  • Ajouter une variable d'environnement LOCALAPPDATA
  • Ajouter des modules : PowerShellGet & PackageManagement

Ajout de la variable LOCALAPPDATA

En utilisant cette méthode, la variable ne dure que la session dans laquelle elle a été créée, vous devez donc l'exécuter dans chaque script que vous souhaitez appeler le PSGallery

[System.Environment]::SetEnvironmentVariable('LOCALAPPDATA',"$env:SystemDriveWindowssystem32configsystemprofileAppDataLocal")

Extraire les exigences d'Internet

Avec ce processus, nous avons un seul script powershell qui téléchargera les modules requis depuis Internet et les installera.

J'ai récupéré les URL des fichiers nupkg des modules que je voulais à partir du Galerie PowerShell, puis à l'aide d'Invoke-WebRequest, je les télécharge, les extrait et les mets en place.

Pour un pas à pas, consultez ceci Article de blog


param ( [string]$ModuleName ) #Setup LOCALAPPDATA Variable [System.Environment]::SetEnvironmentVariable('LOCALAPPDATA',"$env:SystemDriveWindowssystem32configsystemprofileAppDataLocal") $WorkingDir = $env! { $PowerShellGetURL = "https://psg-prod-eastus.azureedge.net/packages/powershellget.2.2.5.nupkg" Invoke-WebRequest -UseBasicParsing -Uri $PowerShellGetURL -OutFile "$WorkingDirpowershellget.2.2.5.zip" $PowerShellGetURL -OutFile "$WorkingDirpowershellget.2.2.5.zip" $PowerShellGetURL -Item -Chemin "$WorkingDir2.2.5" -RépertoireItemType -Force Expand-Archive -Chemin "$WorkingDirpowershellget.2.2.5.zip" -DestinationPath "$WorkingDir2.2.5" $Null = New-Modules -Chemin d'accès "$envll:ProgramFiles" -ErrorAction SilentlyContinue Move-Item -Path "$WorkingDir2.2.5" -Destination "$env:ProgramFilesWindowsPowerShellModulesPowerShellGet2.2.5" } #PackageManagement à partir de l'URL PSGallery si (!(Get-Module -Name PackageManagement)){ $PackageManagementURL = "https://psg-prod-eastus.azureedge.net/packages/packagemanagement.1.4.7.nupkg" Invoke-WebRequest -UseBasicParsing -Uri $PackageManagementURL -OutFile " $WorkingDirpackagemanagement.1.4.7.zip" $Null = New-Item -Chemin "$WorkingDir1.4.7" -ItemType Directory -Force Expand-Archive -Chemin "$WorkingDirpackagemanagement.1.4.7.zip" -DestinationPath "$4.7"1TNuDir1. Élément -Chemin "$env:ProgramFilesWindowsPowerShellModulesPackageManagement" -RépertoireItemType -ErrorAction SilentlyContinue Move-Item -Path "$WorkingDir1.4.7" -Destination "$env:ProgramFilesWindowsPowerShellModulesPackagePackageGestionnaireM1-Tp3ShellModuleNamePort d'installation de PowerShell1.4.7" } #WorkingDir1.4.7" -Force -AcceptLicense -SkipPublisherCheck Import-Module -Name $ModuleName -Force

Maintenant, le script exploite un paramètre pour que vous lui passiez le nom d'un module que vous souhaitez installer.

Galerie PSG

Extraction des exigences du package ConfigMgr

Dans cette méthode, vous avez déjà téléchargé les fichiers Module nupkg et placés dans un Package. C'est essentiellement la même chose, mais provient de vos propres serveurs et vous donne un contrôle total.

Le script est très similaire, mais est conservé dans le package avec la source et copie la source à partir du package au lieu d'Internet.

Script également disponible sur GitHub

param ( [string]$ModuleName ) #Setup LOCALAPPDATA Variable [System.Environment]::SetEnvironmentVariable('LOCALAPPDATA',"$env:SystemDriveWindowssystem32configsystemprofileAppDataLocal") $WorkingDir = $env! Élément "$PSScriptRootpowershellget.2.2.5.nupkg" -Destination "$WorkingDirpowershellget.2.2.5.zip" Développer-Archive -Chemin "$WorkingDirpowershellget.2.2.5.zip" -DestinationPath "$WorkingDir2.2.5" 1-TP2Tnull -Nouveau $env:ProgramFilesWindowsPowerShellModulesPowerShellGet" -ItemType Directory -ErrorAction SilentlyContinue Move-Item -Path "$WorkingDir2.2.5" -Destination "$env:ProgramFilesWindowsPowerShellModulesPowerShellGet2.2.5" } #temPackageManagement-Management$env:ProgramFilesWindowsPowerShellModulesPowerShellGet2.2.5" 1.4.7.nupkg" -Destination "$WorkingDirpackagemanagement.1.4.7.zip" Développer-Archive -Chemin "$WorkingDirpackagemanagement.1.4. 7.zip" -DestinationPath "$WorkingDir1.4.7" $Null = New-Item -Path "$env:ProgramFilesWindowsPowerShellModulesPackageManagement" -ItemType Directory -ErrorAction SilentlyContinue Move-Item -Path "$WorkingPackageDir1." PowerShellGet Import-Module PowerShellGet #Install Module de PSGallery Install-Module -Name $ModuleName -Force -AcceptLicense -SkipPublisherCheck Import-Module -Name $ModuleName -Force

Galerie PSG
Galerie PSG

En action - Vidéo YouTube

Pour voir une démo de l'exécution de ces scripts, regardez cette vidéo YouTube :
Galerie PSG

Très simple

David Segura a fait tout le travail acharné pour vous, et si vous souhaitez tirer parti de ses scripts en ligne, vous pouvez transformer cela en une simple étape avec une ligne de commande qui configurera PS Gallery pour vous, en plus d'ajouter son module OSD et quelques autres articles astucieux.

powershell.exe -executionpolicy bypass -command "Invoke-Expression (Invoke-RestMethod 'sandbox.osdcloud.com')"

Galerie PSG

Je recommande fortement de le vérifier, j'ai déplacé mes processus OSD de laboratoire pour l'utiliser.

Liens communautaires

À propos de Recast Software
1 organisation sur 3 utilisant Microsoft Configuration Manager s'appuie sur Right Click Tools pour détecter les vulnérabilités et y remédier plus rapidement que jamais.
Télécharger des outils gratuits
Demande de prix

Découvrez comment Right Click Tools change la façon dont les systèmes sont gérés.

Augmentez immédiatement votre productivité grâce à notre version Community Edition limitée et gratuite.

Commencez dès aujourd'hui avec Right Click Tools :

Partagez ceci :

Assistance

  • Ce champ n’est utilisé qu’à des fins de validation et devrait rester inchangé.

Contact

  • Ce champ n’est utilisé qu’à des fins de validation et devrait rester inchangé.
fr_FRFrench