Es gibt ja inzwischen auch noch ein paar mehr Distributionen, die im WSL lauffähig sind ... bis hin zu einem
Kali Linux (aber auch openSUSE Leap 42 oder SLES) -
die das WSL selbst wurde massiv erweitert in
ihren seinen Fähigkeiten. Seit dem 1709-Update kann man auch (ohne am Insider-Programm teilzunehmen, da ging das schon seit Juni 2017) die Distribution seiner Wahl einfach aus dem Store installieren (wenn es sie dort gibt).
Wobei die Performance immer noch nicht wirklich gut ist, auch wenn sie deutlich besser geworden ist gegenüber früheren Versionen.
Wenn ich denselben Branch (frisch) auschecke und das einmal unter "Git for Windows" (das basiert auf
MinGW) und einmal unter der Bash in der Canonical-App mache (alles auf demselben Host), dann sind das schon deutliche Unterschiede - es werden halt viele Dateien "behandelt" und die I/O-Performance spielt eine wichtige Rolle (wie auch beim Freetz-Build an sich):
Code:
peh@Bragi MINGW64 ~/Documents/GitHub
$ time git clone [email protected]:PeterPawn/freetz.git
Cloning into 'freetz'...
remote: Counting objects: 139259, done.
remote: Total 139259 (delta 0), reused 0 (delta 0), pack-reused 139258
Receiving objects: 100% (139259/139259), 35.11 MiB | 5.56 MiB/s, done.
Resolving deltas: 100% (92726/92726), done.
Checking out files: 100% (5544/5544), done.
real 0m33.558s
user 0m0.000s
sys 0m0.015s
peh@Bragi MINGW64 ~/Documents/GitHub
Code:
peh@Bragi:/tmp$ time git clone [email protected]:PeterPawn/freetz.git freetz_w10
Cloning into 'freetz_w10'...
remote: Counting objects: 139259, done.
remote: Total 139259 (delta 0), reused 0 (delta 0), pack-reused 139258
Receiving objects: 100% (139259/139259), 35.11 MiB | 5.56 MiB/s, done.
Resolving deltas: 100% (92726/92726), done.
Checking connectivity... done.
Checking out files: 100% (5544/5544), done.
real 0m59.821s
user 0m6.313s
sys 0m21.094s
peh@Bragi:/tmp$
Man sieht auch ziemlich deutlich (im Falle der Canonical-App), wo die Zeit am Ende bleibt ... 21 Sekunden im System sind schon eine ganze Menge.
Wer das also nicht nur als Freizeitbeschäftigung betreibt (wo ihm die Dauer dann auch egal ist) und zusätzlich über die passende Hardware (SLAT wird benötigt) und die richtige Windows-Lizenz verfügt (die W10-Home-Edition kann kein Hyper-V), der fährt in den allermeisten Fällen immer noch besser, wenn er die Freetz-VM unter Hyper-V laufen läßt.
Oder auch gleich (der Service ist immerhin auch in den ersten 12 Monaten kostenlos) eine Azure-VM dafür verwendet, das schont die lokalen Ressourcen zusätzlich oder ist eine Alternative, wenn das eigene System die Voraussetzungen für Hyper-V nicht erfüllt. Daß man dabei dann das Signieren eines eigenen Images immer noch lokal machen sollte (das geht dann auch in einer WSL-App wieder fix), wenn man das überhaupt verwendet, versteht sich wieder von selbst. Ein privater Schlüssel hat in einem VHD-Image in der MS-Cloud nichts verloren (und auch bei keinem anderen Cloud-Service) - und wenn es nur der für das Signieren der FRITZ!Box-Firmware ist.
Leider ist das Freetz-Linux-Image von cinereous auch schon etwas in die Jahre gekommen ... vermutlich kommt man sogar besser weg, wenn man nicht mit diesem beginnt (ist m.W. noch eine LTS-Version von Precise Pangolin (12.04), die auch seit mehr als einem Jahr keine Updates mehr kriegt), sondern gleich mit einer 16.04-LTS startet oder - wenn man tatsächlich eher auf 64-Bit setzen will, wobei das der Cloud egal ist - eben mit einem "Bionic Beaver" von Ubuntu (das werden die meisten sicherlich bevorzugen, obwohl auch andere Distros gut geeignet sind), wo es die 32-Bit-Versionen gar nicht mehr gibt.