Aktivera PSGallery Support

Bild

Lägga till PowerShell -moduler | PSGallery Support för WinPE

Tack till David Segura för att du räknade ut detta och skapade en modul för att uppdatera din WinPE WIM, länk längst ner till sidan. Om du använder hans process behöver du inget av detta. 🙂

Här kommer vi att täcka lägga till denna förmåga utan att ändra din startbild, och aktivera PSGallery under WinPE i en uppgiftssekvens. Detta kommer att omfatta två olika metoder för att aktivera PSGallery

Grundläggande krav

  • Lägg till miljövariabel LOCALAPPDATA
  • Lägg till moduler: PowerShellGet & PackageManagement

Lägger till LOCALAPPDATA -variabel

Med den här metoden varar variabeln bara den session där den skapades, så du måste köra detta i varje skript du vill kalla PSGallery

[System.Environment] :: SetEnvironmentVariable ('LOCALAPPDATA', "$env: SystemDrive \ Windows \ system32 \ config \ systemprofile \ AppData \ Local")

Dra krav från Internet

Med denna process har vi ett enda powershell -skript som laddar ner de nödvändiga modulerna från internet och installerar dem.

Jag tog tag i webbadresserna till nupkg -filerna för modulerna jag ville ha från PowerShell Gallery, sedan använder jag Invoke-WebRequest, jag laddar ner dem, extraherar och flyttar på plats.

För en genomgång, kolla in detta Blogginlägg


param ([string] $ModuleName) #Setup LOCALAPPDATA Variable [System.Environment] :: SetEnvironmentVariable ('LOCALAPPDATA', "$env: SystemDriveWindowssystem32configsystemprofileAppDataLocal") $WorkingDir = 1TP2! {$PowerShellGetURL = "https://psg-prod-eastus.azureedge.net/packages/powershellget.2.2.5.nupkg" Invoke -WebRequest -UseBasicParsing -Uri $PowerShellGetURL -OutFile "$WorkingDirpowershellget.2.2" -Item -Path "$WorkingDir2.2.5" -ItemType Directory -Force Expand -Archive -Path "$WorkingDirpowershellget.2.2.5.zip" -DestinationPath "$WorkingDir2.2.5" $Null = New -Item -Path "FileShemetWindowsPendTomPlateTomPlateTomPlateTomPlateTomPlateTomPlateModel -ErrorAction Tyst fortsätter Move -Item -Path "$WorkingDir2.2.5" -Destination "$env: ProgramFilesWindowsPowerShellModulesPowerShellGet2.2.5"} #PackageManagement från PSGallery URL om (! (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 -Path" $WorkingDir1.4.7 "-ItemType Directory -Force Expand -Archive -Path" $WorkingDirpackagemanagement.1.4.7.zip "-DestinationPath" %.4 " Punkt -path "$env: ProgramFilesWindowsPowerShellModulesPackageManagement" -ItemType Directory -ErrorAction SilentlyContinue Move-post -path "$WorkingDir1.4.7" -Destination "$env: ProgramFilesWindowsPowerShellModulesPackageManagement1.4.7"} #Import PowerShellGet Import-Module PowerShellGet #Install Module från PSGallery Install-Module -Namn $ModuleName -Force -AcceptLicense -SkipPublisherCheck Import -Module -Name $ModuleName -Force

Nu använder scriptet en parameter för att du ska skicka namnet på en modul som du vill installera.

PSGallery

Dra krav från ConfigMgr -paketet

I den här metoden har du redan laddat ner modulen nupkg -filer och placerat i ett paket. Det är i princip samma sak, men hämtar från dina egna servrar och ger dig full kontroll.

Skriptet är väldigt likt, men det förvaras i paketet med källan och kopierar källan från paketet istället för internet.

Skript finns också på GitHub

param ([string] $ModuleName) #Setup LOCALAPPDATA Variable [System.Environment] :: SetEnvironmentVariable ('LOCALAPPDATA', "$env: SystemDriveWindowssystem32configsystemprofileAppDataLocal") $WorkingDir = 1TP2! Objektet "$PSScriptRootpowershellget.2.2.5.nupkg" -Destination "$WorkingDirpowershellget.2.2.5.zip" Expand -Archive -Path "$WorkingDirpowershellget.2.2.5.zip" -DestinationPath "$WorkingDir2.2.5" NewTP " $env: ProgramFilesWindowsPowerShellModulesPowerShellGet "-ItemType Directory -ErrorAction SilentlyContinue Move -Item -Path" $WorkingDir2.2.5 "-Destination" $env: ProgramFilesWindowsPowerShellModulesPowerPackManagePackManagePackManagePackManagePackManagePackManagePackManagePackManagePackManagementManagerManagerManagerPaketManagerPaketManagerManagerPaketSammanhangPaketSammanställningPaketSammanställning 1.4.7.nupkg "-Destination" $WorkingDirpackagemanagement.1.4.7.zip "Expand -Archive -Path" $WorkingDirpackagemanagement.1.4. 7.zip "-DestinationPath" $WorkingDir1.4.7 "$Null = New -Item -Path" $env: ProgramFilesWindowsPowerShellModulesPackageManagement "-ItemType Directory -ErrorAction SilentlyContinue Move -Item -PanTimePanP1PanP1Manager1PanP1Manager1Panj #Post1Monster1Panj1" PowerShellGet Import -Module PowerShellGet #Install Module from PSGallery Install -Module -Name $ModuleName -Force -AcceptLicense -SkipPublisherCheck Import -Module -Name $ModuleName -Force

PSGallery
PSGallery

In Action - YouTube -video

För att se en demo av hur man kör dessa skript, kolla in denna YouTube -video:
PSGallery

Community -länkar

Om Recast Software
1 av 3 organisationer som använder Microsoft Configuration Manager förlitar sig på Right Click Tools för att visa sårbarheter och åtgärda snabbare än någonsin tidigare.
Ladda ner gratis verktyg
Begär pris

Se hur Right Click Tools förändrar hur system hanteras.

Öka produktiviteten direkt med vår begränsade, kostnadsfria Community Edition.

Kom igång med Right Click Tools idag:

Dela detta:

Support

  • Detta fält används för valideringsändamål och ska lämnas oförändrat.

Kontakt

  • Detta fält används för valideringsändamål och ska lämnas oförändrat.
sv_SESwedish