Aktivera PSGallery Support

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

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

Tack till David Segura för att du tog reda på 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 att lägga till denna förmåga utan att modifiera din startbild och aktivera PSGallery under WinPE i en uppgiftssekvens. Detta kommer att täcka 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:SystemDriveWindowssystem32configsystemprofileAppDataLocal")

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") $Working3Ten!ifrån TPGhellet { $PowerShellGetURL = "https://psg-prod-eastus.azureedge.net/packages/powershellget.2.2.5.nupkg" Invoke-WebRequest -UseBasicParsing -Uri $PowerShellGetURL -OutFile "$PowerShellGetURL =OutFile "$PowerShell.zipull New -Item -Sökväg "$WorkingDir2.2.5" -ItemType Directory -Force Expand-Archive -Sökväg "$WorkingDirpowershellget.2.2.5.zip" -DestinationPath "$WorkingDir2.2.5" $Null = "New-Item3TWorkingDirpowershelleTGE -ErrorAction SilentlyContinue Move-Item -Sökväg "$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 1TPURTPackageManagement "Out $WorkingDirpackagemanagement.1.4.7.zip" $Null = New-Item -Sökväg "$WorkingDir1.4.7" -ItemType Directory -Force Expand-Archive -Path "$WorkingDirpackagemanagement.1.4.7.zip" -DestinationPathkingD$WorkingDir 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 Module nupkg-filerna och placerat dem 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") $WorkingDir1 Objekt "$PSScriptRootpowershellget.2.2.5.nupkg" -Destination "$WorkingDirpowershellget.2.2.5.zip" Expand-Archive -Sökväg "$WorkingDirpowershellget.2.2.5.zip" -DestinationPath "$WorkingDirpowershellget.2.2.5.Path" $ENV: ProgramfilesWindowsPowersHellModulesPowersHellget "-ItemType-katalog -ErrorAction" $WorkingDir2.2.5 "-destination" $ENV: programfilerWindowsPowershellModulesPowerShellGetManagement If (! 1.4.7.nupkg" -Destination "$WorkingDirpackagemanagement.1.4.7.zip" Expandera-Arkiv -Sökväg "$WorkingDirpackagemanagement.1.4. 7.Zip "-destinationPath" $WorkingDir1.4.7 "$NULL = NYHET-PUNKTSPATH" $ENV: ProgressFileWeReMeNement "-ItemType-katalog -ErrorAction SilentlyContinue flytta-objekt -Path" $WEVEVIR1.4.7 "-destination" $ENV: ProgramfilesWindowsPhowersHellModulesPackageManage1.4.7 "} #import 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

Superenkelt

David Segura gjorde allt det hårda arbetet för dig, och om du vill utnyttja hans onlineskript kan du göra detta till ett enkelt steg med en kommandorad som kommer att ställa in PS Gallery åt dig, tillsammans med lägga till hans OSD-modul och några andra snygga saker.

powershell.exe -exekveringspolicy bypass -kommando "Invoke-Expression (Invoke-RestMethod 'sandbox.osdcloud.com')"

PSGallery

Jag rekommenderar starkt att du kollar upp det, jag har flyttat mina lab OSD-processer till att använda det.

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.

Genom att skicka in detta formulär förstår du att Recast Software kan behandla dina uppgifter enligt beskrivningen i Recast Software Integritetspolicy.

sv_SESwedish