Aus Linux-Magazin 11/2016

Microsofts Powershell für Linux

© saastaja, 123RF

Microsoft stellte seine Powershell im August 2016 unter eine freie Lizenz und portierte das Werkzeug im Vorübergehen gleich noch auf Linux und Mac OS. Ist das nun nur ein Marketing-Trick oder eine echte Hilfe, womöglich sogar eine Konkurrenz zu den Linux-Shells?

Auf wirklich gar nichts ist mehr Verlass: Ein Feindbild war innerhalb der Open-Source-Community über Jahrzehnte hinweg immer mehrheitstauglich: Microsoft. Und der Konzern aus Redmond tat das Seinige, um den Disput anzuheizen: Unvergessen etwa die Werbekampagne, bei der Microsoft Pinguinen kurzerhand die mutierten Köpfe anderer Tiere verpasste – etwa den eines Frosches mit Geweih – und dazu anmerkte, ein offenes Betriebssystem habe nicht nur Vorteile. Legendär ist auch die Aussage des zuweilen impulsiven Microsoft-Ex-CEO Steve Ballmer, Linux sei ein “Krebsgeschwür” [1].

Seit ein paar Jahren allerdings verfolgt Microsoft einen anderen Weg und betreibt dabei fast schon Appeasement-Politik: Mal machte der Konzern eher schwammige Aussagen hinsichtlich der Möglichkeit, Windows unter eine offene Lizenz zu stellen und dessen Quelltext verfügbar zu machen [2], mal verdutzte Microsoft die Community, als es ankündigte, für die eigene Cloud ein eigenes Linux zu entwickeln [3].

Und plötzlich kursieren sogar Fotos von Linux-Erfinder Torvalds, der auf der Linuxcon 2016 am Microsoft-Stand steht und dort gemütlich Kaffee trinkt [4]. Noch im Jahr 2000 machte sich Torvalds einen Aprilscherz daraus, Microsoft zum Partner in Sachen Linux-Entwicklung zu ernennen. Nun hat die Wirklichkeit den Joke überholt.

Dass Microsoft es mit seinen Open-Source-Ambitionen ernst meint, machte das Unternehmen im August dann ein weiteres Mal deutlich, als es die Powershell für Windows unter eine freie Lizenz stellte und sie gewissermaßen im Vorübergehen auch gleich noch auf Linux und Mac OS portierte.

Fast 10 Jahre

Die Powershell hat auf Windows bereits eine bewegte Geschichte hinter sich: Erstmals 2007 stellte Microsoft das Werkzeug in Version 1.0 vor [5]. Die Idee der Powershell ist, eine Alternative zur Kommandozeile »cmd.exe« zu schaffen, die auf Windows-Systemen bis heute enthalten ist, allerdings nicht viele Funktionen bietet. Verglichen mit typischen Linux-Shells hat »cmd.exe« keine Chance: Zum Beispiel steht in Sachen Scripting lediglich das Batch-Format zur Verfügung, damit kämpft das Tool auf verlorenem Posten.

Es sei aus Gründen der Fairness aber auch erwähnt, dass Microsoft »cmd.exe« eher als Relikt der Vergangenheit betrachtet denn als aktuelles Tool für Admins. Um dagegen ein Werkzeug für die Power-User zu liefern, führte der Konzern aus Redmond die Powershell ein. Im Laufe der Jahre sammelte sie viele Fans und durchaus auch Prestige: Wer regelmäßig mit Windows zu tun hat, schätzt ihre Möglichkeiten.

Dazu gehört das Ausführen von Befehlen auf Systemen ohne den Umweg über ein GUI: Fast jeder hat vermutlich schon jene Internet-Memes gesehen, die erklären, wie sich auf verschiedenen Betriebssystemen eine IP-Adresse einer Netzwerkkarte zuweisen lässt. Windows schneidet dort schlecht ab, weil der Vorgang mit »cmd.exe« kaum sinnvoll durchführbar ist. Die Powershell rüstet für Windows im Grunde jene Funktionalität nach, die Linux-Admins über die diversen Shells (Bash, Ksh, Zsh …) und ihre Werkzeuge von Anfang an hatten.

Da stellt sich die Frage, warum Microsoft nun glaubt, mit der Windows-Powershell den Linux-Nutzern Mehrwert zu bieten? Was steckt hinter der Veröffentlichung der Powershell für Linux? Handelt es sich um einen Marketinggag von Microsoft oder besitzt die Powershell auf Linux im Alltag tatsächlich Funktionen, die existierende Linux-Shells nicht bieten?

Was soll das?

Die Antwort auf diese Frage ist ein klares “Jein”. Ausschlaggebend für Microsofts Open-Source-Bemühungen dürfte der Umstand sein, dass das Unternehmen sein Dotnet-Framework stärker propagieren möchte, um es zur bevorzugten Plattform von Entwicklern auf verschiedenen Betriebssystemen zu machen, darunter offenbar auch Linux und Mac OS. Am Anfang der Powershell-Entwicklung für Linux stand folglich die Schaffung einer Kern-Dotnet-Plattform. Auf Basis eben jener Plattform war die Portierung der Powershell dann eine vergleichsweise einfache Übung.

Microsoft schielt aber auch in Richtung Cloud: Die Kombination aus den Werkzeugen Powershell, DSC und der Operations Management Suite bietet unter Linux die Möglichkeit, eigene Instanzen in Microsofts Public Cloud Azure bequem zu administrieren. Plattform und Administrationssoftware sind in dieser Kombination eng verzahnt.

Grundlegende Features

Unter der Haube basiert die Powershell auf Dotnet. Sie mischt verschiedene Methoden: Einerseits ermöglicht sie das Ausführen simpler Kommandozeilen-Befehle, ganz so, wie Admins es auch von Linux her kennen. Verschiedene Befehle lassen sich außerdem kombinieren, sodass typische Shellskripte entstehen. Zentrale Shellfunktionen unter Linux beherrscht die Powershell ebenso, etwa die Möglichkeit, per Pipe die Ausgabe eines Programms an ein anderes umzuleiten. Andererseits folgt die Powershell dem objektorientierten Ansatz: Bei der Arbeit mit der Shell lassen sich Methoden sowie Objekte definieren, die die Methoden anschließend nutzen.

Zentrale Dreh- und Angelpunkte der Arbeit mit der Powershell sind die so genannten Commandlets. Im Powershell-Sprech ist ein Cmdlet eine eigene Dotnet-Klasse, die eine festgelegte Aufgabe nach ihrem Aufruf ausführt. Cmdlets sind also im Grunde die eigentlichen Befehle, die sich in Form von Skripten oder sogar von Binaries bündeln lassen. Microsoft hat viel Arbeit investiert, um die Powershell mit vielen nützlichen Cmdlets auszustatten: Schon nach der Installation stehen viele Befehle bereit, etwa um Dateien oder Verzeichnisse zu löschen oder Ordner anzulegen oder deren Inhalt anzuzeigen (Abbildung 1).

Abbildung 1: »Get-Childitem« ist ein klassisches Cmdlet, dessen Ausgabe der des schon von »cmd.exe« her bekannten »dir« gleicht.

Abbildung 1: »Get-Childitem« ist ein klassisches Cmdlet, dessen Ausgabe der des schon von »cmd.exe« her bekannten »dir« gleicht.

Fast sinnvoller als unter Linux ist bei Cmdlets die Benennung gelöst: Laut Powershell-Standard müssen Cmdlets nämlich einen eindeutigen Namen haben, der aus einem Verb und einem Objekt besteht. Das Cmdlet für das Löschen von Ordnern oder Dateien heißt folgerichtig offiziell »Remove-Item« . Ein anderes Beispiel: Das Cmdlet für Downloads aus dem Internet heißt »Invoke-WebRequest« , wer Linux gewohnt ist, würde hier instinktiv aber eher nach »wget« oder »curl« suchen.

Um gestandenen Linux-Admins den Umstieg auf die Powershell leichter zu machen, hat Microsoft sich in deren ersten öffentlichen Versionen übrigens etwas Besonderes ausgedacht: Dort waren nämlich die gängigen Linux-Befehle auf die Powershell-Cmdlets mit der entsprechenden Konfiguration per Alias gemappt. Nach Beschwerden der Userschaft hat Microsoft diesen Ansatz allerdings wieder verworfen, denn er verhindert letztlich, dass Nutzer die echten Kommandozeilen-Programme – also »ls« oder »cd« – ausführen.

Die Installation auf Linux

Microsoft ist erkennbar darum bemüht, die Einstiegshürden für die Powershell auf Linux möglichst gering zu halten. Das Unternehmen macht auf Github nicht nur den Quelltext der Version 6 der Powershell für die Öffentlichkeit verfügbar, sondern bietet auch eine Paketvariante für die gängigen Linux-Distributionen an. So ist es sehr leicht, gleich loszulegen – etwa auf Ubuntu 16.04: Unter [6] steht ein Paket für die genannte Ubuntu-Version bereit, das die Versionsnummer auch in seinem Namen trägt. Nach der Installation der Pakete »libunwind8« sowie »libicu55« lässt sich das Powershell-Paket mittels »dpkg -i« wie gewohnt installieren (Abbildung 2).

Abbildung 2: Nach der Installation von »libunwind8« und »libicu55« lässt sich die Powershell mit Hilfe des ».deb«-Pakets von Microsoft installieren.

Abbildung 2: Nach der Installation von »libunwind8« und »libicu55« lässt sich die Powershell mit Hilfe des ».deb«-Pakets von Microsoft installieren.

Noch toller wäre der Dienst freilich, käme die Powershell über ein richtiges Paketrepository mit signierten Releasedateien daher; möglicherweise ist Microsoft dieser Aufwand aber noch zu groß – weil auch Pakete für diverse RPM-basierte Distributionen seitens des Anbieters bereitstehen, müsste Microsoft den Repository-Zinnober dann für mehrere Paketsysteme umsetzen. Auch ohne eigenes Repository gilt jedenfalls: Gut gemacht! So manch anderes Softwareprojekt kann sich von Microsoft hier eine dicke Scheibe abschneiden.

Dotnet Core: Abgespecktes Dotnet

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

Diesen Ansatz verfolgen die Microsoft-Entwickler aber nicht, weil sie zu faul wären, alle Powershell-Features auf Linux zu portieren. Doch ist eine Portierung 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 Mac OS-Computern eben nicht. Entsprechend fehlen in der Powershell für Linux diverse Cmdlets, die Windows-Admins aus ihrer gewohnten Umgebung kennen.

Die abgespeckte Dotnet-Version ist noch in anderer Hinsicht wichtig: Wer im Netz Cmdlets oder Skripte für Powershell findet, der darf in der Regel erwarten, dass die Windows-Powershell sie korrekt umsetzt. Programmiertechnisch sind Cmdlets schließlich nur Dotnet-Klassen, die andere, allgemein verfügbare Dotnet-Klassen einbinden. Während der Powershell auf Windows-Rechnern das volle Dotnet-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.

OMI – die Wiedergeburt von WMI

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-Extensions, 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 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 im Netz 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.

DSC: Desired State Configuration

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 Settings 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 »/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 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.

Fernab von DSC tut sich bei der Powershell in ihrer ersten Version für Linux allerdings wenig. Win-RM-Funktionalität fehlt: Per Powershell ist es also nicht möglich, einem Rechner aus der Ferne Befehle zu senden – ein Äquivalent zur SSH-Funktionalität in Linux ist schlichtweg nicht vorhanden. Immerhin hat Microsoft dieses Problem erkannt und gelobt Besserung. Noch ist aber nicht absehbar, wie die Umsetzung dann konkret aussieht. Vermutlich setzt Microsoft bei der Lösung auf etablierte Protokolle wie Open SSH. Insgesamt dürfte sich die Powershell in Zukunft immer mehr zu einem universalen Werkzeug entwickeln, das sich an Windows- wie an Linux-Systeme gleichermaßen richtet.

Scripting

Shellskripte sind schon bei Linux ein heißes Eisen: Die einen lieben die Möglichkeit, Befehle gebündelt in eine Datei zu packen und diese dann auszuführen. Andere sehen in Shellskripten ein Werkzeug des Teufels und argumentieren, dass jedes Shellskript, das länger als zehn Zeilen ist, eigentlich in einer typischen Skriptsprache wie Perl oder Python verfasst sein sollte. Wer zur Fraktion der Shellskript-Befürworter gehört, darf sich über Powershell freuen: Auch hier gibt es die Möglichkeit, Befehle per Powershell-Skript auszuführen. Das Prinzip funktioniert wie bei typischen Linux-Shells. Wichtig ist, dass die jeweilige Skriptdatei auf ».ps1« endet.

Darüber hinaus sind der Kreativität kaum Grenzen gesetzt: Wie in einem Bash-Skript auch reiht der Admin in Powershell-Skripten die aufzurufenden Cmdlets aneinander. Powershell-Skripte lassen sich ebenfalls mit Bedingungen ausstatten, so gibt es »If« »Elseif« und »Else« (Abbildung 3).

Abbildung 3: Für Shellskripte kann der Anwender in der Powershell in separaten Dateien beliebige Funktionen definieren, die sich …

Abbildung 3: Für Shellskripte kann der Anwender in der Powershell in separaten Dateien beliebige Funktionen definieren, die sich …

Hinzu kommt die Möglichkeit, eigene Funktionen in Form von Modulen zu hinterlegen: Das Apache-Beispiel [7], das die Powershell-Entwickler in ihrem Github-Verzeichnis hinterlegen, erklärt das gut. In einer Datei, deren Name auf ».psm1« endet, definiert der Admin mit dem Schlüsselwort »Function« Funktionen (Abbildung 4). Wie aus anderen Shells gewohnt, können Funktionen Parameter haben. Die Moduldefinition lädt das jeweilige Shellskript dann per »Import-Module« -Cmdlet – schon stehen die eigenen Definitionen innerhalb des Shellskripts zur Verfügung.

Abbildung 4: … danach aus dem jeweiligen Shellskript aufrufen lassen. Wie klassische Unix-Shells beherrscht die Powershell umfangreiches Scripting.

Abbildung 4: … danach aus dem jeweiligen Shellskript aufrufen lassen. Wie klassische Unix-Shells beherrscht die Powershell umfangreiches Scripting.

Eine Besonderheit gibt es allerdings beim Aufrufen von Skripten: Wer es als Linux-Admin gewohnt ist, den berühmten Shebang an den Anfang eines Shellskripts zu stellen, kann das auch in Powershell tun. Allerdings sorgt das dafür, dass jedes Shellskript in einer eigenen Powershell-Umgebung läuft, die eigens für diesen Zweck startet. Der Austausch von Objekten mit der umgebenden Powershell ist dann unmöglich.

Eine Alternative mit Stolpersteinen

Außer Frage steht wohl, dass Microsofts Ambitionen durchaus groß sind – denn der Konzern hat beträchtliche Mittel investiert, um aus der Powershell überhaupt ein Open-Source-Produkt zu machen. Aktuell gelingt es Microsoft allerdings nicht, höhere Erwartungen als die an ein Proof-of-Concept zu erfüllen. Im Github-Verzeichnis seiner Powershell führt der Hersteller eine Liste der Probleme, die aktuell die Powershell unter Linux beuteln. Das ist zwar einerseits löblich, denn auf diese Weise lebt Microsoft den Gedanken der Offenheit weiter. Auf der anderen Seite liest sich jene Liste wie eine Meldung aus dem Gruselkabinett. Denn fundamentale Funktionen waren zu Redaktionsschluss defekt.

Darunter etwa das Globbing: Von Linux-Shells her sind Admins es gewohnt, dass sie mit Wildcards (»*« für viele Zeichen oder »?« für ein Zeichen) mehrere Dateien auf der Kommandozeile dynamisch wählen können. Das funktioniert auf der Powershell zwar auch – aber nur für Cmdlets. Wer stattdessen ein natives Linux-Binary von der Powershell aus aufruft und eine Wildcard übergibt, erhält eine Fehlermeldung, weil die Powershell das Wildcard-Zeichen nicht automatisch ersetzt. Indirekt spielt dieser Umstand auch in die bereits beschriebene Alias-Diskussion hinein: Wenn die Aliases für die gängigen Unix-Befehle entfernt sind und Powershell stattdessen die nativen Linux-Programme aufruft, ist etwa ein »ls *« in einem Ordner aus diesem Grund unmöglich (Abbildung 5).

Abbildung 5: »dir« und »ls« rufen unterschiedliche Programme auf – bei »ls« klappt das Globbing aber nicht.

Abbildung 5: »dir« und »ls« rufen unterschiedliche Programme auf – bei »ls« klappt das Globbing aber nicht.

Das Aufrufen nativer Linux-Binaries auf der Powershell hat aber noch mehr unangenehme Nebeneffekte: Der Rückgabewert von Cmdlets ist stets ein Objekt. Powershell ist auf Objekte angewiesen, um Features wie das Weiterleiten der Ausgabe eines Programms als Input an andere Programme zu ermöglichen. Native Linux-Programme geben aber klassische Rückgabewerte aus und keine Objekte, sodass das Piping hier gar nicht erst funktioniert.

Mindestens so schwer wiegt, dass die Powershell ab Werk nicht zwischen Groß- und Kleinschreibung unterscheidet. Das betrifft vor allem fertige Powershell-Skripte aus dem Netz: Wer sich ein fertiges Skript für eine bestimmte Aufgabe herunterlädt, muss hoffen, dass dessen Autor etwa beim Laden externer Module genau den Namen benutzt, den das jeweilige Modul im Dateisystem hat. In einer Linux-Umgebung erhielte er sonst nur eine Fehlermeldung.

Das Thema Case-Sensitivity ist auch für Windows-Admins ein Problem, die über die Powershell zu Linux kommen: Beim Komplettieren der Eingabe mit der [Tab]-Taste etwa zeigt die Powershell unter Windows das passende Programm an, ganz gleich, ob Groß- und Kleinschreibung passen oder nicht. Wer auf Linux jedoch »Mk« eingibt und glaubt, das würde zu »mkdir« automatisch vervollständigt, der bekommt wieder nur eine Fehlermeldung.

Obendrein entwickeln sich aus liebgewonnenen Konventionen Stolpersteine, wenn Linux-Admins die Powershell nutzen – oder umgekehrt. Unter Windows ist es etwa möglich, über die Powershell Programme zu stoppen oder zu starten. Die passenden Befehle dafür funktionieren unter Linux freilich nicht, weil hier eigene (native) Kommandos existieren. Überhaupt müssen sich Admins umstellen, was die Notation von Befehlen angeht: Parameter bei Kommandos bekommen stets nur ein »-« vorangestellt und sind außerdem Case-sensitiv.

Wer sich von diesen Kinderkrankheiten nicht abschrecken lässt und erste Gehversuche mit der Powershell unternimmt, bekommt von Microsoft sehr großzügige Hilfe: Zusammen mit der Powershell für Linux stellte die Firma aus Redmond auch fertige Beispiele für neue Cmdlets bereit und demonstriert nebenbei, wie sich Skriptsprachen – etwa Python – aus Powershell heraus sinnvoll nutzen lassen. Das gesamte Beispiel-Archiv finden interessierte Admins unter [8].

Fazit

Im ersten Test erweist sich die Powershell noch als Baustelle, die sattelfeste Bash-Admins kaum zufriedenstellt. Angesichts der Tatsache, dass Microsoft das Werkzeug immer noch als Alphaversion betitelt und öffentliche Entwicklung (samt Bug-Suche) erst seit zwei Monaten überhaupt stattfindet, ist das aber okay. Zumal Microsoft die gesamte Entwicklung inklusive des Bug-Reporting genauso offen gestaltet wie den Quelltext der Powershell selbst. Auch das hat man in Redmond früher bei anderen Gelegenheiten anders gehandhabt.

Viel wichtiger ist zumindest im Augenblick ohnehin das erneute Zeichen aus Richtung Microsoft, dass man in Linux nicht mehr den einstigen Erzfeind sieht, sondern einen Konkurrenten und sogar einen echten Partner für mögliche Kooperationen. Als sich der Microsoft-CEO und Ballmer-Nachfolger Satya Nadella vor einigen Monaten zusammen mit einer Powerpoint-Folie ablichten ließ, deren Text “Microsoft Loves Linux” lautete, sorgte das in der Szene für einige Belustigung. Die Veröffentlichung der Linux-Powershell und die Arbeit, die Microsoft seither in dieses Produkt investiert, beweisen aber, dass das keineswegs nur eine leere Floskel war.

Klar ist auch: Die Powershell für Linux steht momentan gerade erst am Anfang ihrer Entwicklung. Behält Microsoft das aktuelle Tempo bei der Entwicklung bei, dann kann sie in absehbarer Zeit durchaus zum ernsthaften Konkurrenten für etablierte Linux-Shells werden. Und damit auch zum Segen für alle Admins, die eigentlich aus der Windows-Welt stammen, aber mit Linux aus irgendwelchen Gründen trotzdem regelmäßig in Berührung kommen. Zusammen mit Ubuntus Ansatz, die Bash auf Windows zu portieren, verschmelzen die Welten zusehends miteinander.

Infos

  1. Steve Ballmer, “Linux ist ein Krebsgeschwür”: http://www.theregister.co.uk/2001/06/02/ballmer_linux_is_a_cancer/
  2. Windows als Open Source? http://www.heise.de/newsticker/meldung/Windows-als-Open-Source-Kann-passieren-2595931.html
  3. Linux von Microsoft für die Cloud: http://azure.github.io/SONiC/
  4. Torvalds am Microsoft-Stand: http://fossbytes.com/wp-content/uploads/2016/08/linus-torvalds-meets-microsoft-guys-linuxcon.jpg
  5. Holger Schwichtenberg, “Muschelzucht im Ausland – Microsofts Powershell vor der Auslieferung”: Linux-Magazin 12/06, S. 92
  6. Powershell für Ubuntu 16.04: https://github.com/Powershell/Powershell/releases/download/v6.0.0-alpha.9/powershell_6.0.0-alpha.9-1ubuntu1.16.04.1_amd64.deb
  7. Apache-Skript für Powershell: https://github.com/Powershell/Powershell/tree/master/demos/Apache
  8. Beispiele für Powershell: https://github.com/Powershell/Powershell/tree/master/demos

Der Autor

Martin Gerhard Loschwitz arbeitet als Teamlead Open Stack bei Sys Eleven in Berlin. In seiner Freizeit segelt er bevorzugt auf der Ostsee.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 6 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben