michi.wtr
Goto Top

PowerShell Modul Installation

Hey Community,

Wie man anhand meiner (häufigen) letzten Fragen schon erkennen kann: Ich versuche mich, weitestgehend in PowerShell einzuarbeiten.
Ich bin Auszubildender im ersten Lehrjahr, jedoch hat in meinem Betrieb leider niemand eine Ahnung von PowerShell... Ein Bekannter hat mir das Buch "PowerShell In Depth" empfohlen, welches ich auch Zeit für Zeit durcharbeite. Auch die about-Files und Help-Files lese ich mir fleißig durch face-smile

Jedoch stoße ich in der Firma auf ein Problem bei der Installation der Module:
nugeterror
(Auf einem Server, den ich für Speichern der Module + Help Files etc. einrichten möchte, um von hier aus über Implicit-Remoting die Module für Clients laden kann, um eine Zentrale Anlaufstelle für Module und Help-Files zu haben)

chocolateyerror
(Auf meinem lokalen Computer, NuGet ist hier schon installiert. Wie ich das geschafft habe? Kein Ahnung, das war in meiner ersten Woche PowerShell. Ich weiß noch, dass ich dabei auch einige Probleme hatte, aber nach 100x versuchen hat die Installation funktioniert...)

Nun will ich natürlich für meinen Server die PackageProvider NuGet und Chocolatey installieren. Wenn ich es richtig verstanden habe, brauche ich diese, um Module installieren zu können? Gerade mache ich es so, dass ich mir die Module auf meinen lokalen Computer installiere, und dann die Ordner auf den Server kopiere, aber um einiges geschmeidiger wäre es natürlich, die Module direkt dort zu installieren...

Zudem wollte ich auch mal noch Chocolatey auf meinem lokalen Computer installieren, um evtl. eine größere Auswahl an Modulen zu bekommen.


Was genau sagen mir die Fehlermeldungen? Muss ich zuvor noch irgendwelche Pfade eingeben, da die Meldung
"https://onegetcdn.azureedge.net/providers/Microsoft.PackageManagement.NuGetProvider-2.8.5.208.dll" nach ""  
durchgeführt werden.
mir keinen Pfad "nach" sagen kann?
Oder ist das eher ein Firewall Problem, da ich auch nach öffnen des Links für manuelle Installation
"nuget" kann manuell von  
https://onegetcdn.azureedge.net/providers/Microsoft.PackageManagement.NuGetProvider-2.8.5.208.dll heruntergeladen und
installiert werden.
eine Fehlermeldung bekomme, dass mein PC durch diese Dateien beschädigt werden könnte....


Falls mir dabei jemand helfen könnte wäre ich sehr dankbar! ^^
Auch für weitere Empfehlungen für Lektüren oder Guides für PowerShell (egal welches Thema :D) wäre ich super froh.
Help-Files und Microsoft.Documentation kenne ich natürlich.

Gruß,
Micha

Content-Key: 6541312539

Url: https://administrator.de/contentid/6541312539

Printed on: April 28, 2024 at 05:04 o'clock

Member: Crusher79
Solution Crusher79 Mar 28, 2023 at 10:20:12 (UTC)
Goto Top
PowerShell als Admin ausgeführt ?

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))  

Also damit sollte zumdindest chocolatey problemlos gehen.
Member: michi.wtr
michi.wtr Mar 28, 2023 at 11:05:23 (UTC)
Goto Top
Zitat von @Crusher79:

PowerShell als Admin ausgeführt ?

Ja habe ich


Zitat von @Crusher79:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))  

Also damit sollte zumdindest chocolatey problemlos gehen.

Ich schätze das hat funktioniert, habe auf jeden Fall keinen Error bekommen, nur ein paar Warning-Messages, aber keine davon hat was gesagt es hätte nicht funktioniert.

Kann ich irgendwie überprüfen ob es geklappt hat? Denn mit Get-PackageSource und Get-PackageProvider finde ich kein Chocolatey.
Mitglied: 3063370895
Solution 3063370895 Mar 28, 2023 at 11:15:36 (UTC)
Goto Top
Zitat von @michi.wtr:
Kann ich irgendwie überprüfen ob es geklappt hat? Denn mit Get-PackageSource und Get-PackageProvider finde ich kein Chocolatey.

Gib mal im Terminal/Powershell
choco
ein.
Wenn die Installation erfolgreich war solltest du eine Ausgabe bekommen:
Chocolatey v1.3.1
Please run 'choco -?' or 'choco <command> -?' for help menu.  
Member: michi.wtr
michi.wtr Mar 28, 2023 at 11:32:36 (UTC)
Goto Top
Ich habe gerade außerdem versucht, den NuGet-Anbieter manuell zu installieren, indem ich auf einem anderen Notebook einfach die dll-Datei heruntergeladen habe, diese dann in den in der Warnmeldung beschriebenen Ordner "C:\Program Files\PackageManagement\ProviderAssemblies" gepackt habe und anschließend die Shell neu gestartet habe.

Nun scheine ich auf dem Server die Module zu finden, habe jedoch Probleme bei der Installation:
err

Diese Fehlermeldung hatte ich schonmal, habe jedoch leider nichts dafür im Internet gefunden, was bei mir funktioniert hätte...
Der Download startet zwar, doch bricht dann am Ende ab und sagt mir: Das Ende des Datensatzes im zentralen Verzeichnis wurde nicht gefunden.

Zentrales Verzeichnis? Ist das auf meinem Server und ich hab bei dem PackageProvider was verbockt oder ist das irgendein Verzeichnis im Modul und nicht meine Schuld ^^ ?
Member: michi.wtr
michi.wtr Mar 28, 2023 at 11:35:09 (UTC)
Goto Top
Zitat von @chaot1coz:

Zitat von @michi.wtr:
Kann ich irgendwie überprüfen ob es geklappt hat? Denn mit Get-PackageSource und Get-PackageProvider finde ich kein Chocolatey.

Gib mal im Terminal/Powershell
choco
ein.
Wenn die Installation erfolgreich war solltest du eine Ausgabe bekommen:
Chocolatey v1.3.1
Please run 'choco -?' or 'choco <command> -?' for help menu.  

Ah super, danke :D
Auf dem Client mit dem ich das auf die Weise installiert habe funktioniert es. Auf den Server habe ich einfach mal die Ordner Kopiert, in denen die PackageProvider gespeichert sind
(C:\Program Files\PackageManagement\ProviderAssemblies). NuGet wird mir auf dem Server auch angezeigt, choco funktioniert aber dort leider auch nicht
Member: michi.wtr
michi.wtr Mar 28, 2023 at 11:40:10 (UTC)
Goto Top
Zitat von @michi.wtr:

Zentrales Verzeichnis? Ist das auf meinem Server und ich hab bei dem PackageProvider was verbockt oder ist das irgendein Verzeichnis im Modul und nicht meine Schuld ^^ ?

Ok, schätze mal ist irgendein Fehler von mir, weil sich kein Modul installieren lässt :\

err
Mitglied: 6247018886
Solution 6247018886 Mar 29, 2023 updated at 05:56:12 (UTC)
Goto Top
Ich bin Auszubildender im ersten Lehrjahr, jedoch hat in meinem Betrieb leider niemand eine Ahnung von PowerShell...
Dann tippe ich darauf das du über einen Proxy ins Netz gehst... Die machen damit Probleme. Umgehe den Proxy wenn möglich, ansonsten wende dich an deinen Ausbilder/Netzwerkadmin.
Füge dem Install-Module command auch den -Verbose Parameter hinzu, da sieht man das.
Und lass diese mnauelle Kopiererei der Module, die macht es nur noch inkonsistenter!

Cheers briggs
Member: Crusher79
Crusher79 Mar 29, 2023 at 20:06:59 (UTC)
Goto Top
Zitat von @6247018886:

Dann tippe ich darauf das du über einen Proxy ins Netz gehst... Die machen damit Probleme. Umgehe den Proxy wenn möglich, ansonsten wende dich an deinen Ausbilder/Netzwerkadmin.

Or in englisch:
install-package end of central directory record could not be found

Bei google kommen viele Threads auch beim Proxy heraus.... Im 1. Lehrjahr bist ja nicht immer in der Firma face-wink

Würde es mal zu Hause testen. Durchspielen. Und wenn dich damit befassen sollst/ darfst, an den Admin wegen den Proxy herantreten. PowerShell ist eigentlich ein muss. Beim Exchange geht kaum was ohne. Das zu begründen wäre also einfach ....
Member: michi.wtr
michi.wtr Mar 31, 2023 at 13:28:00 (UTC)
Goto Top
Alles klar, vielen lieben Dank face-smile

Also privat hab ich es natürlich schon getestet und es funktioniert alles wunderbar. Ich habe herausgefunden, dass auch nur die Module mit der Fehlermeldung nicht heruntergeladen werden, welche eine "Ausführbare Datei" (=.exe) herunterladen müssen. Das wird wohl von der Firewall für die Server geblockt. Habe nun die Module über meinen Arbeitslaptop heruntergeladen und anschließend auf den Server kopiert. Nun kann ich sie von allen Notebooks über eine Session importieren.

Bin leider bei uns der Einzige der sich mit PowerShell auseinandersetzt bzw. dafür interessiert, deshalb wende ich mich sehr häufig auch hier an das Forum, hat mir aber auch schon oft weitergeholfen <3