Abo
  • Services:
Anzeige
Noch plagen Microsoft die üblichen Startprobleme beim Freilegen der Powershell für Linux.
Noch plagen Microsoft die üblichen Startprobleme beim Freilegen der Powershell für Linux. (Bild: Martin Wolf/Golem.de)

Abgespecktes .Net bringt Einschränkungen

In der Dokumentation der Powershell für Linux und MacOS weisen die Microsoft-Entwickler bereits explizit darauf hin, dass Windows-Admins auf Linux nicht alle gewohnten Powershell-Befehle finden. Das liegt auch daran, dass die Powershell für Linux nicht direkt auf dem großen .Net-Framework basiert, sondern auf einer abgespeckten neue Variante namens .Net Core.

Diesen Ansatz verfolgen die Microsoft-Entwickler aber nicht, weil sie zu faul wären, alle Powershell-Funktionen auf Linux zu portieren. Eine Portierung ist bei mehreren Funktionen einfach nicht sinnvoll. Exemplarisch erwähnt seien die Powershell-Funktionen, die sich auf die Windows-Oberfläche beziehen. Die gibt es auf Linux-Systemen oder MacOS-Computern eben nicht. Entsprechend fehlen in der Powershell für Linux diverse Cmdlets, die Windows-Admins aus ihrer gewohnten Umgebung kennen.

Anzeige

Die abgespeckte .Net-Version ist noch in anderer Hinsicht wichtig: Wer im Netz Cmdlets oder Skripte für die Powershell findet, der darf in der Regel erwarten, dass die Windows-Powershell sie korrekt umsetzt. Programmiertechnisch sind Cmdlets schließlich nur .Net-Klassen, die andere, allgemein verfügbare .Net-Klassen einbinden. Während der Powershell auf Windows-Rechnern das volle .Net-Framework zur Verfügung steht, fehlen auf Linux-Systemen möglicherweise Klassen, die externe Cmdlets erwarten. Im schlimmsten Fall lassen sich Cmdlets also auf Linux nicht ausführen, während sie auf Windows-Systemen ohne Probleme funktionieren.

Quelloffene Variante klassischer Windows-Funktionen

Eine weitere Komponente, auf die die Powershell im Hintergrund setzt und die auf Linux-Systemen fehlt, heißt Windows Management Instrumentation (WMI). Auf Windows-Systemem leistet WMI einen wichtigen Beitrag zur Rechnerverwaltung. Per WMI lassen sich Windows-Hosts automatisiert verwalten, etwa durch das Ausrollen von Code auf dem Zielsystem. WMI ist Microsofts Methode, das Prinzip des Web-Based Enterprise Management (WBEM) umzusetzen und eine Schnittstelle für das Common Information Model (CIM) nach Standards der DMTF zu implementieren.

Microsoft weist hier ausdrücklich darauf hin, dass beim Thema WMI die Open-Source-Eigenschaften der Powershell enden. Jene Powershell-Erweiterungen, die sich explizit auf WMI beziehen, gehören gerade nicht zum quelloffenen Teil der Powershell, die auch unter Linux zu benutzen ist.

WMI liegt aktuellen Versionen von Windows ab Werk bei - Linux-Systemen aber eben nicht. Microsoft verspricht zwar, für dieses Problem eine Lösung zu bieten, verweist aktuell aber auf DSC für Linux, das es bereits seit einer ganzen Weile gibt. Die Idee hinter DSC ist es, fehlende WMI-Funktionalität durch OMI zu kompensieren. OMI, also die Open Management Infrastructure, ist eine Alternative der Open Group zu WMI und steht als freier Download zur Verfügung. Genau diese Bibliothek nutzt Microsoft, um die Powershell auf Linux ähnliche Aufgaben ausführen zu lassen wie auf Windows per WMI.

Desired State Configuration als Analog zu Puppet

Die Komponente innerhalb der Powershell, die andere Rechner auf Basis einer vorgegebenen Konfiguration herrichtet, heißt DSC, was für Desired State Configuration steht. Eine kastrierte Version von DSC hatte Microsoft bereits 2015 für Linux veröffentlicht. Wer aus der Linux-Welt kommt, tut sich bei einem Vergleich mit Puppet noch am leichtesten. Wie Puppet setzt DSC in der Powershell bestimmte deklarativ formulierte Einstellungen entlang der Admin-Vorgaben auf dem Host um. Wie Puppet ist auch DSC idempotent, liefert also bei mehrfacher Ausführung dasselbe Ergebnis wie nach einem einfachen Lauf.

Interessant an DSC ist, dass es auch unter der Haube so ähnlich wie Puppet funktioniert. Die gewünschte Konfiguration gibt der Admin in Form eines Konfigurationsdokuments (MOF-Datei) an, um sie dann von seiner Powershell aus auf den Linux-Rechner per Push-Befehl zu übertragen. Die Powershell-Dokumentation zum Thema DSC zeigt auch ein konkretes Beispiel für das Anlegen einer Datei in dem Verzeichnis tmp auf dem Zielhost.

Allerdings hat das natürlich wenig Bezug zur Praxis: Während WMI auf Windows-Hosts an das System angepasst ist, wirkt der auf OMI basierende Ansatz für Linux und Mac OS aktuell noch einigermaßen nutzlos. Hier bleibt abzuwarten, ob Microsoft DSC für Linux zum echten Managementwerkzeug ausbauen will oder ob man das Feld letztlich doch den etablierten Lösungen wie Puppet & Co. überlässt.

Wie bereits erwähnt, ist die Powershell DSC für Linux streng genommen ein übler Hack. Die notwendigen Powershell-Befehle setzte Microsoft damals in Form von Python-Skripten um. Mit der Veröffentlichung der Powershell für Linux fällt diese Notwendigkeit eigentlich weg. In absehbarer Zeit dürfte Microsoft DSC auf Linux also bloß noch aus der echten Powershell heraus anbieten.

 Was soll das eigentlich?Noch keine Remote-Verwaltung, dafür Scripting 

eye home zur Startseite
ObjectID 03. Nov 2016

Wow, wiedermal ein Internet fight MS vs Linux. Selbst ich als c# Programmierer, Apple MDM...

kayozz 27. Okt 2016

Powershell hat zwar viel gemeinsam mit einer REPL Shell, von der Definiton gehört es...

DrWatson 27. Okt 2016

Heißt das nicht, dass man komplett in der .NET-Welt gefangen ist? Man ersetzt ja quasi...

a user 27. Okt 2016

ich glaube du weißt nicht was "Erzfeind" bedeutet.

x-beliebig 27. Okt 2016

dass sich Microsoft Linux annähern kann, kommt aus einer ganz anderen Ecke. Das hat...



Anzeige

Stellenmarkt
  1. Jobware Personalberatung, Raum Bielefeld
  2. Packsize GmbH, Herford (Home-Office)
  3. Qioptiq Photonics GmbH & Co. KG, Feldkirchen
  4. Landeshauptstadt München, München


Anzeige
Spiele-Angebote
  1. 19,49€
  2. 5,99€
  3. 3,99€

Folgen Sie uns
       


  1. MacOS High Sierra

    MacOS-Keychain kann per App ausgelesen werden

  2. Sendersuchlauf

    Unitymedia erstattet Kunden die Kosten für Fernsehtechniker

  3. Spielebranche

    US-Synchronsprecher bekommen mehr Geld und Transparenz

  4. Ignite 2017

    Microsoft 365 kommt auch für Schüler und Fabrikarbeiter

  5. Lego Boost im Test

    Jede Menge Bastelspaß für eine kleine Zielgruppe

  6. Platooning

    Daimler fährt in den USA mit Lkw im autonomen Konvoi

  7. Suchmaschine

    Apple stellt Siri auf Google um

  8. Gruppenchat

    Skype for Business wird durch Microsoft Teams ersetzt

  9. Teardown

    iFixit findet größeren Akku in Apple Watch Series 3

  10. Coffee Lake

    Intel verkauft sechs Kerne für unter 200 Euro



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Bundestagswahl 2017: Viagra, Datenbankpasswörter und uralte Sicherheitslücken
Bundestagswahl 2017
Viagra, Datenbankpasswörter und uralte Sicherheitslücken
  1. Bundestagswahl 2017 IT-Probleme verzögerten Stimmübermittlung
  2. Bundestagswahl 2017 Union und SPD verlieren, Jamaika-Koalition rückt näher
  3. Zitis Wer Sicherheitslücken findet, darf sie behalten

Olympus Tough TG5 vs. Nikon Coolpix W300: Die Schlechtwetter-Kameras
Olympus Tough TG5 vs. Nikon Coolpix W300
Die Schlechtwetter-Kameras
  1. iZugar 220-Grad Fisheye-Objektiv für Micro Four Thirds vorgestellt
  2. Mobilestudio Pro 16 im Test Wacom nennt 2,2-Kilogramm-Grafiktablet "mobil"
  3. HP Z8 Workstation Mit 3 TByte RAM und 56 CPU-Kernen komplexe Bilder rendern

VR: Was HTC, Microsoft und Oculus mit Autos zu tun haben
VR
Was HTC, Microsoft und Oculus mit Autos zu tun haben
  1. Zukunft des Autos "Unsere Elektrofahrzeuge sollen typische Porsche sein"
  2. Concept EQA Mercedes elektrifiziert die Kompaktklasse
  3. GLC F-Cell Mercedes stellt SUV mit Brennstoffzelle und Akku vor

  1. Re: Fehlt noch Amazon, dann ist alles gut!

    WalterWhite | 10:58

  2. Re: 67W im Idle - Aua

    Bonita.M | 10:57

  3. Re: "quetscht sich ein auto in die kolonne..."

    sViech | 10:56

  4. Re: Blödes Topic von Golem

    Bonita.M | 10:55

  5. Re: Stimme zu, kaum sinnvolle Ausstattung

    Spaghetticode | 10:54


  1. 11:00

  2. 10:45

  3. 10:39

  4. 10:30

  5. 09:44

  6. 09:11

  7. 08:57

  8. 07:51


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel