Freigeben über


Erste Schritte mit dem PowerShell-Katalog

Die PowerShell Gallery ist ein Paket-Repository, das Skripte, Module und DSC-Ressourcen enthält, die Sie herunterladen und verwenden können. Sie verwenden die Cmdlets im PowerShellGet Modul, um Pakete aus dem PowerShell-Katalog zu installieren. Sie müssen sich nicht anmelden, um Elemente aus dem PowerShell-Katalog herunterzuladen.

Sie finden Pakete im PowerShell-Katalog mithilfe des Steuerelements Suche auf der Homepage des PowerShell-Katalogs, oder navigieren Sie über die Seite Paketedurch die Module und Skripts. Sie können auch Pakete aus dem PowerShell-Katalog finden, indem Sie die Cmdlets Find-Module, Find-DscResourceund Find-Script, je nach Pakettyp, mit -Repository PSGalleryausführen.

Sie können Ergebnisse aus dem Katalog mithilfe der folgenden Parameter filtern:

  • Name
  • AllVersions
  • MinimumVersion
  • RequiredVersion
  • Etikett
  • Enthält
  • DscResource
  • RoleCapability
  • Befehl
  • Filter

Wenn Sie nur an der Ermittlung bestimmter DSC-Ressourcen im Katalog interessiert sind, können Sie das cmdlet Find-DscResource ausführen. Find-DscResource gibt Daten zu DSC-Ressourcen zurück, die im Katalog enthalten sind. Da DSC-Ressourcen immer als Teil eines Moduls bereitgestellt werden, müssen Sie weiterhin Install-Module ausführen, um diese DSC-Ressourcen zu installieren.

Nachdem Sie ein Paket ausgewählt haben, möchten Sie vielleicht mehr darüber erfahren. Sehen Sie sich die Paketseite in der Galerie an. Die Paketseite enthält die mit dem Paket hochgeladenen Metadaten. Die Metadaten werden vom Autor des Pakets bereitgestellt. Microsoft überprüft diese Informationen nicht. Der Eigentümer des Pakets ist mit dem Galerie-Konto verknüpft, das zur Veröffentlichung des Pakets verwendet wurde. Das Owner-Konto ist autoritativer als das Author-Feld.

Wenn Sie ein Paket entdecken, das Ihrer Meinung nach nicht in gutem Glauben veröffentlicht wurde, wählen Sie auf der Seite dieses Pakets Missbrauch melden .

Wenn Sie Find-Module oder Find-Scriptausführen, können Sie diese Daten im zurückgegebenen PSGetModuleInfo--Objekt anzeigen. Im folgenden Beispiel werden Daten für das PSReadLine Modul im Katalog zurückgegeben.

Find-Module -Name PSReadLine -Repository PSGallery | Get-Member

Wir empfehlen den folgenden Prozess beim Herunterladen von Paketen aus dem PowerShell-Katalog:

Inspizieren

Um ein Paket aus der Galerie zur Inspektion herunterzuladen, verwenden Sie das oder Save-Script cmdlets Save-Module auf dem Paket. Diese Befehle speichern das Paket lokal, ohne es zu installieren. Inspizieren Sie den Inhalt der Verpackung. Denken Sie daran, das gespeicherte Paket manuell zu löschen.

Einige Pakete werden von Microsoft erstellt, andere von der PowerShell-Community. Microsoft empfiehlt, die Inhalte und den Code von Paketen in diesem Katalog vor der Installation zu überprüfen.

Wenn Sie ein Paket entdecken, das Ihrer Meinung nach nicht in gutem Glauben veröffentlicht wurde, wählen Sie auf der Seite dieses Pakets Missbrauch melden .

Installieren

Um ein Paket aus dem Katalog zur Verwendung zu installieren, führen Sie je nach Pakettyp entweder das Install-Module- oder Install-Script-Cmdlet aus.

Standardmäßig Install-Module wird das Modul standardmäßig auf $env:ProgramFiles\WindowsPowerShell\Modules Location installiert, was ein Administratorkonto erfordert. Wenn du den Parameter -Scope CurrentUser hinzufügst, installiert der Befehl das Modul in $HOME\Documents\WindowsPowerShell\Modules .

Standardmäßig wird das Skript auf $env:ProgramFiles\WindowsPowerShell\Scripts Location installiert, Install-Script was ein Administratorkonto erfordert. Wenn du den Parameter -Scope CurrentUser hinzufügst, installiert der Befehl das Skript in $HOME\Documents\WindowsPowerShell\Scripts.

Install-Module und Install-Script installiert die aktuellste Version eines Pakets. Um eine ältere Version des Pakets zu installieren, fügen Sie den parameter -RequiredVersion hinzu.

Aufstellen

Um ein Paket aus der PowerShell-Galerie zu Azure Automation zu deployen, wählen Sie Azure Automation und wählen Sie dann auf der Seite Paketdetails Deploy to Azure Automation . Du wirst zum Azure Management Portal weitergeleitet, wo du dich mit deinen Azure-Kontodaten anmeldest. Das Bereitstellen von Paketen mit Abhängigkeiten bereitet alle Abhängigkeiten in Azure Automation bereit. Die Schaltfläche "Deploy to Azure Automation " kann deaktiviert werden, indem Sie das Tag AzureAutomationNotSupported zu Ihren Paketmetadaten hinzufügen.

Weitere Informationen zu Azure Automation finden Sie in der dokumentation Azure Automation.

Um Pakete zu aktualisieren, die aus dem PowerShell-Katalog installiert sind, führen Sie entweder das cmdlet Update-Module oder Update-Script aus. Wenn es ohne weitere Parameter ausgeführt wird, versucht es, Update-Module alle installierten Module durch Ausführung zu aktualisieren Install-Module. Um Module selektiv zu aktualisieren, fügen Sie den parameter -Name hinzu.

Ebenso versucht es, wenn es ohne weitere Parameter ausgeführt wird, Update-Script alle installierten Skripte durch Ausführung zu aktualisieren Install-Script. Um Skripts selektiv zu aktualisieren, fügen Sie den parameter -Name hinzu.

Um herauszufinden, welche Module du aus der PowerShell-Galerie installiert hast, starte das Get-InstalledModule CMDLET. Dieser Befehl listet alle Module auf, die Sie auf Ihrem System haben, die direkt aus dem PowerShell-Katalog installiert wurden.

Um ähnlich herauszufinden, welche Skripte du aus der PowerShell-Galerie installiert hast, führe das Get-InstalledScript Cmdlet aus. Dieser Befehl listet alle Skripts auf, die Sie auf Ihrem System haben, die direkt aus dem PowerShell-Katalog installiert wurden.

Wichtig

Für den PowerShell-Katalog ist Transport Layer Security (TLS) 1.2 oder höher erforderlich. Wenn Sie TLS 1.2 oder höher nicht verwenden, wird beim Versuch, auf den PowerShell-Katalog zuzugreifen, eine Fehlermeldung angezeigt. Verwenden Sie den folgenden Befehl, um sicherzustellen, dass Sie TLS 1.2 verwenden:

[Net.ServicePointManager]::SecurityProtocol =
    [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

Diese Hostnamen sollten den Zulassungslisten hinzugefügt werden, die den Zugriff über Ihr Netzwerk steuern.

Hosts, die für die Paketermittlung und den Download erforderlich sind:

  • cdn.oneget.org
  • cdn.powershellgallery.com

Hosts erforderlich, wenn Sie die PowerShell-Katalogwebsite verwenden:

  • *.powershellgallery.com - Website
  • go.microsoft.com und aka.ms – Umleitungsdienste

Anmerkung

Die alten Endpunkte, die mit azureedge.net endeten, werden nicht mehr unterstützt.