1unitedpower: Bash on Ubuntu on Windows

Hi!

Windows 10 hat eine Linux-Kompatibilitätsschicht eingebaut, mit der es möglich ist Linux-Programme nativ auf Windows auszuführen. Das heißt es wird keine Virtualisierung benötigt und es gibt keinen Linux-Kernel. Zuerst wendet sich Microsoft damit an Entwickler, das erste Vorzeigeprodukt ist deshalb auch die Bash. Ich spiele seit ca. einer Woche damit rum, habe jede Menge Entwicklungstools und Programmiersprachen ausprobiert und bin erstaunt, wie gut sie sich trotz früher Beta-Phase anstellt. Das ist eine gute Nachricht, vor allem auch für die Unix-Fanboys unter uns, deren Arbeitgeber lieber auf Windows als auf Linux oder Mac setzen.

  1. Tach!

    Windows 10 hat eine Linux-Kompatibilitätsschicht eingebaut, mit der es möglich ist Linux-Programme nativ auf Windows auszuführen. [...] Zuerst wendet sich Microsoft damit an Entwickler, das erste Vorzeigeprodukt ist deshalb auch die Bash.

    Jetzt betreibt Microsoft auch noch selbst Windows-Bashing ...

    dedlfix.

  2. Tach,

    Windows 10 hat eine Linux-Kompatibilitätsschicht eingebaut, mit der es möglich ist Linux-Programme nativ auf Windows auszuführen.

    sie hatten für NT ja früher schon eine POSIX-Schicht bzw. die Services for UNIX; ich sehe durch die Beschränkungen, die im Moment gegeben sind, erstmal nicht, dass es Cygwin ersetzen könnte (erstmal, ich hätte aber auch den MS SQL-Server für Linux nicht vorhergesehen).

    mfg
    Woodfighter

    1. ich sehe durch die Beschränkungen, die im Moment gegeben sind, erstmal nicht, dass es Cygwin ersetzen könnte (erstmal, ich hätte aber auch den MS SQL-Server für Linux nicht vorhergesehen).

      Welche Beschränkungen meinst du? Ich sehe bei der nativen Bash vor allem den Vorteil, dass Programme nicht gesondert kompiliert werden müssen, wie es bei vielen Programmen für Cygwin der Fall ist. Damit hatte ich unter Cygwin immer Probleme.

      1. Tach,

        Welche Beschränkungen meinst du?

        soweit ich gelesen habe, kann man aus der bash keine Windows-Programme aufrufen oder aus der Powershell/cmd mal eben das Linux-awk; weiterhin glaube ich (erstmal) nicht, dass Microsoft genug API zur Verfügung stellen wird (z.B. Zugriff auf die Registry über /proc/ oder die Hardware über /dev/ und wenn man das tut, wie werden dann die Zugriffsberechtigungen geregelt?)

        Ich sehe bei der nativen Bash vor allem den Vorteil, dass Programme nicht gesondert kompiliert werden müssen, wie es bei vielen Programmen für Cygwin der Fall ist. Damit hatte ich unter Cygwin immer Probleme.

        Windows ist nunmal kein Linux, ich erwarte ja auch nicht, dass ich ein BSD-Kompilat unter Linux ausführen kann; allerdings habe ich dann halt ein natives (bzw. nativ+cygwin) Windows-Binary, das auf alles zugreifen kann und nicht glaubt unter Linux zu laufen. Bash on Windows ist halt (k)ein Emulator wie Wine (hats dabei aber einfacher, da die API frei ist), das ist meiner Meinung nach ein Hack und keine langfristige Lösung.

        mfg
        Woodfighter

        1. soweit ich gelesen habe, kann man aus der bash keine Windows-Programme aufrufen oder aus der Powershell/cmd mal eben das Linux-awk; weiterhin glaube ich (erstmal) nicht, dass Microsoft genug API zur Verfügung stellen wird (z.B. Zugriff auf die Registry über /proc/ oder die Hardware über /dev/ und wenn man das tut, wie werden dann die Zugriffsberechtigungen geregelt?)

          Das stimmt. Ich für meinen Teil muss so gut wie nie in die Registry eingreifen, und auch manuelle Eingriffe in die hardwarenahe Schicht gehören nicht zu meinen täglichen Aufgaben. Wenn man das braucht ist man mit Cygwin bestimmt besser dran, aber vermutlich auch nicht besser als mit der CMD oder Powershell. Meine täglichen Aufgaben mit der Bash umfassen aber hauptsächlich die Ausführung von REPLs für diverse Programmiersprachen, das Steuern von Entwicklungsservern und Daemons, die Automatisierung diverser Pre-Runtime Tasks, Git, SSH etc... Cygwin war mir bei diesen Aufgaben nie eine besonders große Hilfe, weil ich zu viel nachkonfigurieren musste und regelmäßig mit Ausnahmefällen zu kämpfen hatte, weil Cygwin sich anders verhielt als Linux. Die andere Alternative sind virtuelle Maschinen, aber die kommen eben mit einem enormen Overhead daher. Die Bash ist mir jetzt schon ein besserer Freund als Cygwin, weil mein Kram funktioniert, wie ich es gewohnt bin. Es hängt natürlich sehr von der Aufgabenstellung und persönlicher Präferenzen ab, zum Glück muss man sich ja nicht zwischen Cygwin, Bash und VM entscheiden. Die Bash ist einfach nur ein weiteres Werkzeug, das man jetzt unter Windows nutzen kann.

          Ich sehe bei der nativen Bash vor allem den Vorteil, dass Programme nicht gesondert kompiliert werden müssen, wie es bei vielen Programmen für Cygwin der Fall ist. Damit hatte ich unter Cygwin immer Probleme.

          Windows ist nunmal kein Linux, ich erwarte ja auch nicht, dass ich ein BSD-Kompilat unter Linux ausführen kann;

          Ich erwarte das auch nicht, umso schöner, wenn meine Erwartungen dann übertroffen werden und es trotzdem funktioniert.

          1. Tach,

            Das stimmt. Ich für meinen Teil muss so gut wie nie in die Registry eingreifen, und auch manuelle Eingriffe in die hardwarenahe Schicht gehören nicht zu meinen täglichen Aufgaben.

            Jo, das war vielleicht zu sehr wie ein Admin gedacht, aber es gibt auch so noch genug Fallstricke, die ich für problematisch halte; cron und at fallen mir gerade ein, logs oder sendmail - wenn das alles getrennt vom Windows läuft (z.B. statt cron und at mit dem entsprechenden Windowsdienst zu verknüpfen), ist man im Prinzip nicht weit von einer VM weg. Die Konzepte von Windows und Linux sind halt zum Teil einfach zu unterschiedlich und ich glaube nicht dass MS vorhat hier bald wie Apple einen radikalen Schnitt zu machen.

            Wenn man das braucht ist man mit Cygwin bestimmt besser dran, aber vermutlich auch nicht besser als mit der CMD oder Powershell. Meine täglichen Aufgaben mit der Bash umfassen aber hauptsächlich die Ausführung von REPLs für diverse Programmiersprachen, das Steuern von Entwicklungsservern und Daemons, die Automatisierung diverser Pre-Runtime Tasks, Git, SSH etc...

            Das klingt eher so, als bräuchtest du ein *nix-basiertes OS (für diese Aufgaben) als Desktop, aber vermutlich gibt es auch noch Dinge, für die das Windows nötig ist.

            Ich erwarte das auch nicht, umso schöner, wenn meine Erwartungen dann übertroffen werden und es trotzdem funktioniert.

            Dann darf ich auch hoffen, dass Windows frei wird, weil MS sich bei der Implementierung vertut und etwas mit einer krebsartigen Lizenz übernimmt ;-)

            mfg
            Woodfighter

            1. Das klingt eher so, als bräuchtest du ein *nix-basiertes OS (für diese Aufgaben) als Desktop, aber vermutlich gibt es auch noch Dinge, für die das Windows nötig ist.

              Brauche ich auch, habe ich auch, nur nicht mehr als Host-System. Dafür bietet mir Windows 10 zu viele Vorteile, die ich bei Linux zuletzt vermisst habe: Ergonomische GUI, Stabilität, Energieeffizienz und Leistung. Dazu kommt, dass sich Linux viel besser als Gastsystem eignet, weil man es wunderbar ressourcensparend kopflos betreiben kann und es remote sehr gut steuern kann. So versuche ich mir das beste aus beiden Welten zusammen zu klauben.

              1. Tach,

                Dafür bietet mir Windows 10 zu viele Vorteile, […] Ergonomische GUI, Stabilität, Energieeffizienz und Leistung.

                Hmm, alles Attribute, die ich mit meinem Windows 7 nicht unbedingt in Verbindung bringen würde (also so im direkten Vergleich.

                die ich bei Linux zuletzt vermisst habe:

                Und ich wollte hinter „*nix als Desktop“ noch dazu schreiben: nein, ich kenne auch keins. Nicht, dass ich mit meinem nicht glücklich werden kann, aber ich bin kein „normaler“ User.

                mfg
                Woodfighter

                1. Hallo,

                  Dafür bietet mir Windows 10 zu viele Vorteile, […] Ergonomische GUI, Stabilität, Energieeffizienz und Leistung.

                  Hmm, alles Attribute, die ich mit meinem Windows 7 nicht unbedingt in Verbindung bringen würde (also so im direkten Vergleich.

                  sehe ich im Vergleich mit Windows XP/7 ebenso.

                  Und ich wollte hinter „*nix als Desktop“ noch dazu schreiben: nein, ich kenne auch keins. Nicht, dass ich mit meinem nicht glücklich werden kann, aber ich bin kein „normaler“ User.

                  Naja, zumindest schmeißt mir mein Linux-Desktop wesentlich weniger Knüppel zwischen die Beine und versucht nicht ganz so penetrant, mich zu einem bestimmten Workflow und einer bestimmten Organisation meiner Daten zu zwingen.

                  So long,
                   Martin

                  --
                  Logik ist die Theorie, Chaos die Praxis.
                  1. Dafür bietet mir Windows 10 zu viele Vorteile, […] Ergonomische GUI, Stabilität, Energieeffizienz und Leistung.

                    Hmm, alles Attribute, die ich mit meinem Windows 7 nicht unbedingt in Verbindung bringen würde (also so im direkten Vergleich.

                    sehe ich im Vergleich mit Windows XP/7 ebenso.

                    Windows XP ist 14 Jahre alt, Windows 7 ist immerhin schon 6 Jahre alt. Um das mal in Relation zu setzen: Ubuntu ist erst 3 Jahre nach Windows XP geboren worden, als Windows 7 raus kam hat Ubuntu noch auf Gnome gesetzt. Wenn du Windows XP und Windows 7 mit Linux vergleichen willst, musst du das auch mit den damaligen Zeitgenossen machen. Wenn man einen Vergleich zwischen modernen Betriebssystemen wagt, muss man auch Windows 10 zulassen. Alles andere sorgt für eine verzerrte Darstellung.

                    1. Tach,

                      Wenn man einen Vergleich zwischen modernen Betriebssystemen wagt, muss man auch Windows 10 zulassen.

                      Windows 10 disqualifiziert sich halt aus anderen Gründen (für mich).

                      mfg
                      Woodfighter

                    2. Hi,

                      sehe ich im Vergleich mit Windows XP/7 ebenso.

                      Windows XP ist 14 Jahre alt, Windows 7 ist immerhin schon 6 Jahre alt.

                      ja, aber die beiden Versionen hatte ich gewählt, weil es die jüngsten sind, mit denen ich selbst noch Erfahrungen gemacht habe. Und für mich ist Windows seit XP stetig schlimmer geworden, vor allem was Komfort und Benutzerfreundlichkeit betrifft. Mit dem Erscheinen von Windows 7 habe ich für mich endgültig beschlossen: AUS! Windows ist für mich gestorben.

                      Um das mal in Relation zu setzen: Ubuntu ist erst 3 Jahre nach Windows XP geboren worden, als Windows 7 raus kam hat Ubuntu noch auf Gnome gesetzt.

                      Ja, Ubuntu macht seither auch viel Mist, vor allem mit dem Desktop.

                      Wenn du Windows XP und Windows 7 mit Linux vergleichen willst, musst du das auch mit den damaligen Zeitgenossen machen.

                      Sehr gern. Nur bei XP fehlt mir die zeitgenössisch dazu passende Linux-Erfahrung; ich vermute aber, damals hätte ich Windows noch den Vorzug gegeben. Beim Erscheinen von Windows 7 war aber Ubuntu, wenn du das als Beispiel nehmen möchtest, mit Version 9.04 "jaunty" schon gut im Rennen, und das war mir allemal angenehmer als Windows 7.

                      Wenn man einen Vergleich zwischen modernen Betriebssystemen wagt, muss man auch Windows 10 zulassen. Alles andere sorgt für eine verzerrte Darstellung.

                      Meinetwegen muss es nicht der Vergleich zwischen den neuesten Versionen sein. Aber Windows 10 käme für mich schon aufgrund der intensiven Schnüffelei und der rigorosen "Dein-PC-gehört-uns"-Politik von MS nicht in Frage.

                      So long,
                       Martin

                      --
                      Logik ist die Theorie, Chaos die Praxis.
                      1. Aber Windows 10 käme für mich schon aufgrund der intensiven Schnüffelei und der rigorosen "Dein-PC-gehört-uns"-Politik von MS nicht in Frage.

                        Privatsphäre wird in der Linux Community auf jeden Fall sehr viel höher gehandelt als bei global Playern. Dennoch muss man dazu auch sagen, dass Windows 10 schon sehr oft Opfer von schlecht recherchiertem Shockjournalismus wurde, wo die Schlagzeile mehr zählt als die Story. Ich wäre sehr dankbar für Lektüre, die die Thematik gründlich siziert. Ein paar Fragen, auf die ich bisher nur unzufrieden stellende Antwort gefunden habe: Welche juristischen Möglichkeiten hält sich MS offen, und welche Möglichkeiten werden davon bisher ausgespielt? Inwiefern entsprechen die juristischen Regelungen der üblichen Praxis welche gehen darüber hinaus? Welche Datentransferns sind technisch notwendig, welche nicht? Welche Infos werden zu welchen Zwecken ausgewertet? Es macht einen Unterschied, ob MS eine Info auswertete, um die Stabilität des Systems zu gewährleisten oder um personalisierte Angebote im Store zu generieren. In welcher Rolle übermittelt Microsoft welche Daten an welche Dienste? MS ist ja zum Beispiel auch PaaS-Anbieter und viele Apps kommunizieren deshalb mit Azure.

                        1. Hallo,

                          Aber Windows 10 käme für mich schon aufgrund der intensiven Schnüffelei und der rigorosen "Dein-PC-gehört-uns"-Politik von MS nicht in Frage.

                          Privatsphäre wird in der Linux Community auf jeden Fall sehr viel höher gehandelt als bei global Playern.

                          ja, davon bin ich auch überzeugt.

                          Dennoch muss man dazu auch sagen, dass Windows 10 schon sehr oft Opfer von schlecht recherchiertem Shockjournalismus wurde, wo die Schlagzeile mehr zählt als die Story.

                          Das gilt aber wohl für alle Windows-Versionen und alle umstrittenen Features. Und auch für viele Produkte abseits von Windows.

                          Ich wäre sehr dankbar für Lektüre, die die Thematik gründlich siziert.

                          Es gab in einer der letzten Ausgaben einer populären PC-Zeitschrift einen recht ausführlichen Bericht über die Schnüffelei und die Phone-Home-Unarten von Windows 10. Ich bin mir nicht mehr sicher, welches Magazin es war; ich meine, es war die c't.

                          Da hatten sie für Testzwecke einen Windows-10-PC mit Wireshark belauscht und die Anzahl der externen Verbindungen während des Bootens, beim Aufklappen des Startmenüs und während der ersten zwei Minuten Leerlauf nach dem Hochfahren protokolliert. Beim frisch installierten System mit Defaulteinstellungen waren das AFAIR über 200 Verbindungsversuche zu Servern, die mit Microsoft assoziiert werden. Ein großer Teil davon galt wohl dem Microsoft-AppStore.

                          Dann haben die Experten versucht, alles zu deaktivieren, was im Interesse der Privacy auf normalem Weg überhaupt deaktivierbar ist. Ergebnis: Immer noch rund 100 Verbindungsversuche, deren Zweck nicht klar war bzw. nicht identifiziert werden konnte.

                          Ein paar Fragen, auf die ich bisher nur unzufrieden stellende Antwort gefunden habe: Welche juristischen Möglichkeiten hält sich MS offen, und welche Möglichkeiten werden davon bisher ausgespielt? Inwiefern entsprechen die juristischen Regelungen der üblichen Praxis welche gehen darüber hinaus? Welche Datentransferns sind technisch notwendig, welche nicht? Welche Infos werden zu welchen Zwecken ausgewertet? Es macht einen Unterschied, ob MS eine Info auswertete, um die Stabilität des Systems zu gewährleisten oder um personalisierte Angebote im Store zu generieren. In welcher Rolle übermittelt Microsoft welche Daten an welche Dienste?

                          Ehrlich gesagt interessiert mich das Warum gar nicht so sehr, auch nicht die Frage, ob das Sammeln von Informationen legal ist oder nicht. Entscheidend ist, dass Informationen an den Hersteller fließen, ohne dass ich es weiß, geschweige denn verhindern kann. Das ist für mich schon ein KO-Kriterium. Daher bekommen auch so tolle "Features" wie der Mozilla Crash Reporter bei mir einen Maulkorb.

                          MS ist ja zum Beispiel auch PaaS-Anbieter und viele Apps kommunizieren deshalb mit Azure.

                          Oh. Zwei neue Buzzwords, die ich noch nicht gehört habe. Aber nach kurzer Recherche sehe ich, dass das wohl daran liegt, dass ich diesen Trend ohnehin nicht mag und einen weiten Bogen darum mache.

                          So long,
                           Martin

                          --
                          Logik ist die Theorie, Chaos die Praxis.
                        2. Tach,

                          Inwiefern entsprechen die juristischen Regelungen der üblichen Praxis welche gehen darüber hinaus?

                          dazu fällt mir der Passus ein, dass MS sich vorhält Updates und auch anderes (z.B. Tool zum Entfernen bösartiger Software) nicht deaktivierbar auszuführen und das ist der Punkt, wo das ganze nicht mehr mein Gerät ist, weil ich keine Kontrolle mehr habe.

                          Welche Infos werden zu welchen Zwecken ausgewertet? Es macht einen Unterschied, ob MS eine Info auswertete, um die Stabilität des Systems zu gewährleisten oder um personalisierte Angebote im Store zu generieren.

                          Das machte nur einen Unterschied, wenn man MS vertraut, dass sie die Daten nicht andersweitig nutzen bzw. die Privacy Statements später anpassen und dass sie dazu in der Lage sind, diese Daten zu schützen.

                          In welcher Rolle übermittelt Microsoft welche Daten an welche Dienste?

                          Das ist noch nicht klar; soweit ich weiß sind bisher nicht alle Datenverbindungen entsprechend zugeordnet worden und es gibt Datensammlungen, die laut dem Privacy Statement nicht deaktivierbar sind (z.B. Diagnosedaten).

                          mfg
                          Woodfighter

              2. Hallo 1unitedpower,

                Brauche ich auch, habe ich auch, nur nicht mehr als Host-System. Dafür bietet mir Windows 10 zu viele Vorteile, die ich bei Linux zuletzt vermisst habe: Ergonomische GUI, Stabilität, Energieeffizienz und Leistung.

                Ich habe meine Reise übrigens inzwischen beendet ;-) (zurück denkend an unsere Diskussion in Münster)

                LG,
                CK

                1. Ich habe meine Reise übrigens inzwischen beendet ;-) (zurück denkend an unsere Diskussion in Münster)

                  Nice! Man sieht da steckt ❤ drin.

                  1. Hallo 1unitedpower,

                    Nice! Man sieht da steckt ❤ drin.

                    Danke :)

                    LG,
                    CK

        2. Bash on Windows ist halt (k)ein Emulator wie Wine

          Wine Is Not an Emulator.

          das ist meiner Meinung nach ein Hack und keine langfristige Lösung.

          Vor allem ist das erstmal nur eine Vorversion. Wine ist auch nicht fix und fertig vom Himmel gefallen.

          1. Tach,

            Bash on Windows ist halt (k)ein Emulator wie Wine

            Wine Is Not an Emulator.

            deswegen stand da ja auch ein k in Klammern.

            das ist meiner Meinung nach ein Hack und keine langfristige Lösung.

            Vor allem ist das erstmal nur eine Vorversion. Wine ist auch nicht fix und fertig vom Himmel gefallen.

            Wine fällt für mich in die selbe Kategorie Hack wie Bash for Windows; ich habe nichts gegen das Konzept (ganz im Gegenteil), aber es ist halt eher Ultima Ratio als tägliches Werkzeug.

            mfg
            Woodfighter

  3. Hallo,

    Windows 10 hat eine Linux-Kompatibilitätsschicht eingebaut, mit der es möglich ist Linux-Programme nativ auf Windows auszuführen.

    Da musste ich erstmal auf den Kalender schauen. Aber nein heute ist 2. Mai, nicht 1. April...

    Gruß
    Kalk

    1. Tach!

      Windows 10 hat eine Linux-Kompatibilitätsschicht eingebaut, mit der es möglich ist Linux-Programme nativ auf Windows auszuführen.

      Da musste ich erstmal auf den Kalender schauen. Aber nein heute ist 2. Mai, nicht 1. April...

      Das System wurde zur Developer Conference "Build 2016" vorgestellt, die am 30. März und 1. April stattfand. Die Chancen, dass es ein Aprilscherz ist, sind dadurch aber nur scheinbar höher.

      dedlfix.