Anmerkungen zu dieser Version des Windows-Subsystems für Linux
Artikel
Build 21364
Allgemeine Windows-Informationen zu Build 21364 finden Sie im Windows-Blog.
GUI-Apps sind jetzt verfügbar! Weitere Informationen finden Sie in diesem Blogbeitrag.
Beheben eines Fehlers beim Zugriff auf Dateien über \\wsl.localhost\.
Korrektur eines potenziellen Deadlocks im LxssManager-Dienst.
Build 21354
Allgemeine Windows-Informationen zu Build 21354 finden Sie im Windows-Blog.
Ändern Sie das wsl-Präfix in \wsl.localhost, um Probleme zu vermeiden, wenn es im Netzwerk einen Computer mit dem Namen „wsl“ gibt. \\wsl$ kann weiterhin verwendet werden.
Aktivieren Sie das Symbol für den Linux-Schnellzugriff für wow-Prozesse.
Update zum Problem, bei dem Version 2 immer über „wslapi RegisterDistribution“ übergeben wurde.
„fmask“ des Verzeichnisses „/usr/lib/wsl/lib“ wurde in „222“ geändert, damit Dateien als ausführbare Dateien markiert werden [GH 3847]
Die Ursache für den Absturz des wsl-Diensts, wenn die VM-Plattform nicht aktiviert ist, wurde behoben.
Build 21286
Allgemeine Windows-Informationen zu Build 21286 finden Sie im Windows-Blog.
Der Befehl „wsl.exe --cd“ wurde eingeführt, um das aktuelle Arbeitsverzeichnis eines Befehls festzulegen.
Die Zuordnung von NTSTATUS zu Linux-Fehlercodes wurde verbessert. [GH 6063]
Die „wsl.exe --mount“-Fehlerberichterstattung wurde verbessert.
Eine Option wurde in „/etc/wsl.conf“ hinzugefügt, um Startbefehle zu aktivieren:
[boot]
command=<string>
Build 20226
Allgemeine Windows-Informationen zu Build 20226 finden Sie im Windows-Blog.
Beheben der Ursache für einen Absturz im LxssManager-Dienst. [GH 5902]
Build 20211
Allgemeine Windows-Informationen zu Build 20211 finden Sie im Windows-Blog.
Fix für den Absturz des LxssManager-Diensts beim Überprüfen, ob die VM im Leerlauf ist. [GH 5768]
Unterstützung für komprimierte VHD-Dateien. [GH 4103]
Stellen Sie sicher, dass die unter „C:\windows\system32\lxss\lib“ installierte Linux-Benutzermodusbibliotheken bei Betriebssystemupgrades erhalten bleiben. [GH 5848]
Die Möglichkeit zum Auflisten verfügbarer Verteilungen, die mit wsl --install --list-distributions installiert werden können, wurde hinzugefügt.
WSL-Instanzen werden nun beendet, wenn sich der Benutzer abmeldet.
Build 20190
Allgemeine Windows-Informationen zu Build 20190 finden Sie im Windows-Blog.
Fehler behoben, der den Start von WSL1-Instanzen verhinderte. [GH 5633]
Hängenbleiben beim Umleiten der Windows-Prozessausgabe behoben. [GH 5648]
%userprofile%\.wslconfig-Option zur Steuerung des VM-Leerlauftimeouts hinzugefügt (wsl2.vmIdleTimeout=<time_in_ms>).
Unterstützung für das Starten von App-Ausführungsaliasen von WSL.
Unterstützung für die Installation des WSL2-Kernels und der Verteilungen zu „wsl.exe --install“ hinzugefügt.
Build 20175
Allgemeine Windows-Informationen zu Build 20175 finden Sie im Windows-Blog.
Passen Sie die Standardspeicherzuweisung der WSL2-VM so an, dass sie 50 % des Hostspeichers oder 8 GB beträgt, je nachdem, welcher Wert kleiner ist [GH 4166].
Ändern Sie das \\wsl$-Präfix in \\wsl, um die URI-Analyse zu unterstützen. Der alte \\wsl$-Pfad wird weiterhin unterstützt.
Aktivieren Sie die geschachtelte Virtualisierung für WSL2 standardmäßig auf amd64. Sie können dies über %userprofile%\.wslconfig ([wsl2] nestedVirtualization=false) deaktivieren.
Lassen Sie die wsl.exe --update-Anforderung Microsoft Update starten.
Unterstützen Sie die Umbenennung über eine schreibgeschützte Datei in DrvFs.
Stellen Sie sicher, dass Fehlermeldungen immer in der richtigen Codepage ausgegeben werden.
Build 20150
Allgemeine Windows-Informationen zu Build 20150 finden Sie im Windows-Blog.
Informationen zu WSL2 GPU Compute finden Sie im Windows-Blog.
Führen Sie die Befehlszeilenoption „wsl.exe --install“ zum einfachen Einrichten von WSL ein.
Führen Sie die Befehlszeilenoption „wsl.exe --update“ zum Verwalten von Updates für den WSL2-Kernel ein.
Legen Sie WSL2 als Standard fest.
Erhöhen Sie das Timeout für das kontrollierte Beenden der WSL2-VM.
Korrigieren Sie die virtio-9p-Racebedingung beim Zuordnen des Gerätespeichers.
Führen Sie keinen 9p-Server mit erhöhten Rechten aus, wenn UAC deaktiviert ist.
Build 19640
Allgemeine Windows-Informationen zu Build 19640 finden Sie im Windows-Blog.
[WSL2] Stabilitätsverbesserungen für virtio-9p (drvfs).
Build 19555
Allgemeine Windows-Informationen zu Build 19555 finden Sie im Windows-Blog.
[WSL2] Verwenden einer Arbeitsspeicher-cgroup, um den von Installations- und Konvertierungsvorgängen verwendeten Speicherplatz zu begrenzen [GH 4669]
Verfügbarmachen von „wsl.exe“, wenn die optionale Komponente „Windows-Subsystem für Linux“ (WSL) nicht aktiviert ist, um die Auffindbarkeit von Features zu verbessern.
Ändern von „wsl.exe“, um Hilfetext auszugeben, wenn die optionale Komponente WSL nicht installiert ist
Fehlerbehebung für die Racebedingung beim Erstellen von Instanzen
Erstellen von „wslclient.dll“ mit allen Befehlszeilenfunktionen
Verhindern eines Absturzes bei angehaltenem LxssManagerUser-Dienst
Fehlerbehebung für ein wslapi.dll-Fast-Fail, wenn der distroName-Parameter NULL ist
Build 19041
Allgemeine Windows-Informationen zu Build 19041 finden Sie im Windows-Blog.
[WSL2] Löschen der Signalmaske vor dem Starten der Prozesse
[WSL2] Aktualisieren des Linux-Kernels auf 4.19.84
Verarbeiten der Erstellung der symbolischen Verknüpfung „/etc/resolv.conf“, wenn die symbolische Verknüpfung nicht relativ ist
Build 19028
Allgemeine Windows-Informationen zu Build 19028 finden Sie im Windows-Blog.
[WSL2] Aktualisieren des Linux-Kernels auf 4.19.81
[WSL2] Ändern der Standardberechtigung von /dev/net/tun in 0666 [GH 4629]
[WSL2] Optimieren der Standard-Arbeitsspeichergröße, die dem virtuellen Linux-Computer zugewiesen ist, auf 80% des Hostarbeitsspeichers
[WSL2] Fehlerbehebung für den Interop-Server, um Anforderungen mit einem Timeout zu verarbeiten, damit sich der Server bei ungültigen Aufrufern nicht aufhängt
Build 19018
Allgemeine Windows-Informationen zu Build 19018 finden Sie im Windows-Blog.
[WSL2] Verwenden Sie cache=mmap als Standardeinstellung für 9p-Einbindungen, um Probleme mit Dotnet-Apps zu beheben
[WSL2] Korrekturen für localhost-Relay [GH 4340]
[WSL2] Einführen einer distributionsübergreifenden, gemeinsam genutzten tmpfs-Einbindung für den Freigabezustand zwischen Distributionen
Korrektur der Wiederherstellung des permanenten Netzwerklaufwerks für \\wsl$
Build 19013
Allgemeine Windows-Informationen zu Build 19013 finden Sie im Windows-Blog.
[WSL2] Verbesserte Arbeitsspeicherleistung der VM des WSL-Hilfsprogramms Arbeitsspeicher, der nicht mehr verwendet wird, wird an den Host zurückgegeben.
[WSL2] Aktualisieren der Kernelversion auf 4.19.79 (CONFIG_HIGH_RES_TIMERS, CONFIG_TASK_XACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_SCHED_HRTICK und CONFIG_BRIDGE_VLAN_FILTERING hinzugefügt).
[WSL2] Korrigiertes Eingaberelay zur Behandlung von Fällen, in denen stdin ein nicht geschlossenes Pipehandle ist [GH 4424]
Die Überprüfung auf \\wsl$ unterscheidet nicht mehr zwischen Groß- und Kleinschreibung.
[wsl2]
pageReporting = <bool> # Enable or disable the free memory page reporting feature (default true).
idleThreshold = <integer> # Set the idle threshold for memory compaction, 0 disables the feature (default 1).
Build 19002
Allgemeine Windows-Informationen zu Build 19002 finden Sie im Windows-Blog.
[WSL] Korrektur seltener Fälle, in denen die Registrierung von Distributionen aufgehoben werden kann, wenn sie unmittelbar nach einem Build-zu-Build-Upgrade gestartet werden.
[WSL] Korrektur eines kleinen Problems beim Herunterfahren mit „wsl.exe“, bei dem Leerlaufzeitgeber von Instanzen nicht abgebrochen wurden.
Build 18995
Allgemeine Windows-Informationen zu Build 18995 finden Sie im Windows-Blog.
[WSL2] Korrektur eines Problems, bei dem DrvFs-Einbindungen nach dem Abbruch eines Vorgangs (z.B. STRG-C) zu funktionieren aufhörten [GH 4377]
[WSL2] Korrektur der Verarbeitung sehr großer hvsocket-Nachrichten [GH 4105]
[WSL2] Korrektur eines Interop-Problems, wenn stdin eine Datei ist [GH 4475]
[WSL2] Korrektur eines Absturzes, wenn ein unerwarteter Netzwerkstatus festgestellt wird [GH 4474]
[WSL2] Abfragen des Namens der Distribution beim Interopserver, wenn der aktuelle Prozess nicht über die Umgebungsvariable verfügt
[WSL2] Korrektur eines Interop-Problems, wenn stdin eine Datei ist
[WSL2] Aktualisieren der Linux-Kernelversion auf 4.19.72
[WSL2] Neu hinzugefügte Möglichkeit zum Angeben weiterer Kernelbefehle in der Befehlszeile mithilfe von WSLCONFIG
[wsl2]
kernelCommandLine = <string> # Additional kernel command line arguments
Build 18990
Allgemeine Windows-Informationen zu Build 18990 finden Sie im Windows-Blog.
Verbesserte Leistung für Verzeichnisauflistungen in \\wsl$
[WSL2] Einführen zusätzlicher Entropie beim Systemstart [GH 4416]
[WSL2] Problembehebung für Windows-Interop bei der Verwendung von „su“ / „sudo“ [GH 4465]
Build 18980
Allgemeine Windows-Informationen zu Build 18980 finden Sie im Windows-Blog.
Korrektur des Lesen von symbolischen Verknüpfungen, die FILE_READ_DATA verweigern. Dies umfasst alle symbolischen Verknüpfungen, die von Windows aus Gründen der Abwärtskompatibilität erstellt werden, z.B. „C:\Dokumente und Einstellungen“ und eine Reihe von symbolischen Verknüpfungen im Benutzerprofilverzeichnis.
Festlegen eines unerwarteten Dateisystemzustands als nicht schwerwiegend [GH 4334, 4305]
[WSL2] Hinzufügen von Unterstützung für arm64, wenn Ihre CPU/Firmware Virtualisierung unterstützt
[WSL2] Zulassen der Anzeige von Kernelprotokollen durch nicht berechtigte Benutzer
[WSL2] Korrigieren des Ausgaberelays, wenn stdout/stderr-Sockets geschlossen wurden [GH 4375]
[WSL2] Unterstützung von Akku- und AC-Adapter-Passthrough
[WSL2] Aktualisieren des Linux-Kernels auf 4.19.67
Hinzufügen der Möglichkeit, den Standardbenutzernamen in „/etc/wsl.conf“ festzulegen:
[user]
default=<string>
Build 18975
Allgemeine Windows-Informationen zu Build 18975 finden Sie im Windows-Blog.
[WSL2] Korrektur einer Reihe von Problemen mit der localhost-Zuverlässigkeit [GH 4340]
Build 18970
Allgemeine Windows-Informationen zu Build 18970 finden Sie im Windows-Blog.
[WSL2] Synchronisierung der Uhrzeit mit der Hostzeit, wenn das System nach dem Ruhezustand fortgesetzt wird [GH 4245]
[WSL2] Nach Möglichkeit Erstellen symbolischer NT-Verknüpfungen auf den Windows-Volumes
[WSL2] Erstellen von Distributionen in den UTS-, IPC-, PID- und Mount-Namespaces.
[WSL2] Korrigieren des localhost-Portrelays, wenn der Server direkt an localhost gebunden wird [GH 4353]
[WSL2] Korrigieren von Interop, wenn die Ausgabe umgeleitet wird [GH 4337]
[WSL2] Unterstützung der Übersetzung absoluter symbolischer NT-Verknüpfungen.
[WSL2] Aktualisieren des Kernels auf 4.19.59
[WSL2] Ordnungsgemäße Festlegung der Subnetzmaske für eth0.
[WSL2] Ändern der Logik, um die Konsolenworkerschleife zu verlassen, wenn das Beendigungsereignis signalisiert wird.
[WSL2] Auswerfen der Distributions-VHD, wenn die Distribution nicht ausgeführt wird.
[WSL2] Korrigieren der Analysebibliothek, um leere Werte ordnungsgemäß zu verarbeiten.
[WSL2] Unterstützung von Docker Desktop durch Erstellen von distributionsübergreifenden Einbindungen. Dieses Verhalten kann durch eine Distribution übernommen werden, indem die folgende Zeile der Datei „/etc/wsl.conf“ hinzugefügt wird:
[automount]
crossDistro = true
Build 18945
Allgemeine Windows-Informationen zu Build 18945 finden Sie im Windows-Blog.
WSL
[WSL2] Zulassen, dass der Zugriff auf lauschende TCP-Sockets in WSL2 über „localhost:port“ vom Host erfolgen kann.
[WSL2] Korrekturen für Installations- und Konvertierungsfehler und zusätzliche Diagnose zur Nachverfolgung zukünftiger Probleme [GH 4105]
[WSL2] Verbessern der Diagnose von WSL2-Netzwerkproblemen
[WSL2] Aktualisieren der Kernelversion auf 4.19.55
[WSL2] Aktualisieren des Kernels mit Konfigurationsoptionen, die für Docker erforderlich sind [GH 4165]
[WSL2] Erhöhen der Anzahl der CPUs, die der Lightweight Utility-VM zugeordnet sind, um eine mit dem Host identische Anzahl zu erreichen (wurde zuvor durch CONFIG_NR_CPUS in der Kernelkonfiguration auf 8 begrenzt) [GH 4137]
[WSL2] Erstellen einer Auslagerungsdatei für die WSL2-Lightweight-VM
[WSL2] Zulassen, dass Benutzereinbindungen über \\wsl$\distro sichtbar sind (z. B. sshfs) [GH 4172]
[WSL2] Verbessern der Leistung des 9P-Dateisystems
[WSL2] Sicherstellen, dass die VHD-ACL nicht unbegrenzt anwächst [GH 4126]
[WSL2] Aktualisieren der Kernelkonfiguration für die Unterstützung von squashfs und xt_conntrack [GH 4107, 4123]
[WSL2] Korrektur für interopaktivierte „/etc/wsl.conf“-Option [GH 4140]
[WSL2] Rückgabe von ENOTSUP, wenn das Dateisystem EAS nicht unterstützt
[WSL2] Korrigieren von CopyFile-Hänger mit \\wsl$
Umschalten von Standard-umask in 0022 und Hinzufügen der filesystem.umask-Einstellung zu „/etc/wsl.conf“
Korrigieren von wslpath, um symbolische Verknüpfungen ordnungsgemäß aufzulösen, dies wurde in 19h1 zurückgesetzt [GH 4078]
Einführung der Datei „%UserProfile%\.wslconfig“ für die Optimierung der WSL2-Einstellungen
[wsl2]
kernel=<path> # An absolute Windows path to a custom Linux kernel.
memory=<size> # How much memory to assign to the WSL2 VM.
processors=<number> # How many processors to assign to the WSL2 VM.
swap=<size> # How much swap space to add to the WSL2 VM. 0 for no swap file.
swapFile=<path> # An absolute Windows path to the swap vhd.
localhostForwarding=<bool> # Boolean specifying if ports bound to wildcard or localhost in the WSL2 VM should be connectable from the host via localhost:port (default true).
# <path> entries must be absolute Windows paths with escaped backslashes, for example C:\\Users\\Ben\\kernel
# <size> entries must be size followed by unit, for example 8GB or 512MB
Build 18917
Allgemeine Windows-Informationen zu Build 18917 finden Sie im Windows-Blog.
WSL
WSL 2 ist Jetzt verfügbar! Weitere Informationen finden Sie im Blog.
Korrektur einer Regression, bei der das Starten von Windows-Prozessen über symbolische Verknüpfungen nicht ordnungsgemäß funktioniert hat [GH 3999]
Hinzufügen der Optionen wsl.exe --list --verbose, wsl.exe --list --quiet und wsl.exe --import --version zu „wsl.exe“
Hinzufügen der Option wsl.exe --shutdown
Plan 9: Zulassen des Öffnend eines Verzeichnisses für einen erfolgreichen Schreibvorgang
Build 18890
Allgemeine Windows-Informationen zu Build 18890 finden Sie im Windows-Blog.
WSL
Nicht blockierender Socketverlust [GH 2913]
EOF-Eingabe für Terminal kann nachfolgende Lesevorgänge blockieren [GH 3421]
Aktualisieren des resolv.conf-Headers, damit er auf „wsl.conf“ verweist [in GH 3928 beschrieben].
Deadlock im epoll-Löschcode [GH 3922]
Verarbeiten von Leerzeichen in Argumenten für --import und --export [GH 3932]
Erweitern von mit mmap behandelten Dateien funktioniert nicht ordnungsgemäß [GH 3939]
Korrektur eines Problems mit ARM64 \\wsl$-Zugriff funktioniert nicht ordnungsgemäß
Hinzufügen eines besseren Standardsymbols für „wsl.exe“
Build 18342
Allgemeine Windows-Informationen zu Build 18342 finden Sie im Windows-Blog.
WSL
Wir haben für Benutzer die Möglichkeit hinzugefügt, auf Linux-Dateien in einer WSL-Distribution aus Windows zuzugreifen. Auf diese Dateien kann über die Befehlszeile zugegriffen werden. Außerdem können Windows-Apps wie der Datei-Explorer, VSCode usw. mit diesen Dateien interagieren. Greifen Sie auf Ihre Dateien zu, indem Sie zu \\wsl$\<Name der Verteilung> navigieren, oder zeigen Sie eine Liste der ausgeführten Distributionen an, indem Sie zu \\wsl$ navigieren.
Hinzufügen zusätzlicher CPU-Infotags und Korrigieren der Cpus_allowed[_list]-Werte [GH 2234]
Unterstützung der Ausführung aus Nicht-Leaderthread [GH 3800]
Behandeln von Konfigurationsupdatefehlern als nicht schwerwiegend [GH 3785]
Aktualisieren von binfmt für die ordnungsgemäße Verarbeitung von Offsets [GH 3768]
Aktivieren der Zuordnung von Netzlaufwerken für Plan 9 [GH 3854]
Unterstützung von Windows > Linux und Linux > Windows-Pfadübersetzung für Bindungseinbindungen
Erstellen schreibgeschützter Abschnitte für Zuordnungen für Dateien, die schreibgeschützt geöffnet sind
Build 18334
Allgemeine Windows-Informationen zu Build 18334 finden Sie im Windows-Blog.
WSL
Umgestalten der Art und Weise, in der die Windows-Zeitzone einer Linux-Zeitzone zugeordnet wird [GH 3747]
Beheben von Speicherverlusten und Hinzufügen neuer Zeichenfolgenübersetzungsfunktionen [GH 3746]
SIGCONT für eine Threadgruppe ohne Threads ist eine Nulloperation [GH 3741]
Richtige Anzeige von Socket- und Epoll-Dateideskriptoren in „/proc/self/fd“
Build 18305
Allgemeine Windows-Informationen zu Build 18305 finden Sie im Windows-Blog.
WSL
pthreads verlieren den Zugriff auf Dateien, wenn der primäre Thread beendet wird [GH 3589]
TIOCSCTTY sollte den Parameter „force“ ignorieren, wenn er nicht erforderlich ist [GH 3652]
Verbesserungen an der Befehlszeile von „wsl.exe“ und Hinzufügung von Import-/Exportfunktionen.
Usage: wsl.exe [Argument] [Options...] [CommandLine]
Arguments to run Linux binaries:
If no command line is provided, wsl.exe launches the default shell.
--exec, -e <CommandLine>
Execute the specified command without using the default Linux shell.
--
Pass the remaining command line as is.
Options:
--distribution, -d <DistributionName>
Run the specified distribution.
--user, -u <UserName>
Run as the specified user.
Arguments to manage Windows Subsystem for Linux:
--export <DistributionName> <FileName>
Exports the distribution to a tar file.
The filename can be - for standard output.
--import <DistributionName> <InstallLocation> <FileName>
Imports the specified tar file as a new distribution.
The filename can be - for standard input.
--list, -l [Options]
Lists distributions.
Options:
--all
List all distributions, including distributions that are currently
being installed or uninstalled.
--running
List only distributions that are currently running.
-setdefault, -s <DistributionName>
Sets the distribution as the default.
--terminate, -t <DistributionName>
Terminates the distribution.
--unregister <DistributionName>
Unregisters the distribution.
--upgrade <DistributionName>
Upgrades the distribution to the WslFs file system format.
--help
Display usage information.
Build 18277
Allgemeine Windows-Informationen zu Build 18277 finden Sie im Windows-Blog.
WSL
Korrektur des Fehlers „no such interface supported“ in Build 18272 [GH 3645]
Ignorieren des MNT_FORCE-Flags für Systemaufruf zum Aufheben der Einbindung [GH 3605]
Umschalten von WSL-Interop für die Verwendung der offiziellen CreatePseudoConsole-API
Keinen Timeoutwert beibehalten, wenn FUTEX_WAIT neu gestartet wird
Build 18272
Allgemeine Windows-Informationen zu Build 18272 finden Sie im Windows-Blog.
WSL
WARNUNG: In diesem Build liegt ein Problem vor, durch das WSL nicht funktionsfähig wird. Wenn Sie versuchen, die Verteilung zu starten, wird der Fehler „Schnittstelle nicht unterstützt“ angezeigt. Das Problem wurde behoben und ist im Insider Fast-Build der nächsten Woche nicht mehr enthalten. Wenn Sie diesen Build installiert haben, können Sie ein Rollback auf den vorherigen Windows-Build durchführen, indem Sie unter „Einstellungen > Update und Sicherheit > Wiederherstellung“ die Option „Zur vorherigen Version von Windows 10 zurückkehren“ auswählen.
Build 18267
Allgemeine Windows-Informationen zu Build 18267 finden Sie im Windows-Blog.
WSL
Korrektur eines Problems, bei dem der Zombieprozess möglicherweise nicht beendet und unbegrenzt ausgeführt wird.
WslRegisterDistribution hängt, wenn die Fehlermeldung die maximale Länge überschreitet [GH 3592]
Zulassen der erfolgreichen Ausführung von fsync für schreibgeschützte Dateien auf DrvFs [GH 3556]
Sicherstellen, dass die Verzeichnisse „/bin“ und „/sbin“ vorhanden sind, bevor symbolische Verknüpfungen darin erstellt werden [GH 3584]
Hinzufügen eines Instanztimeoutmechanismus für WSL-Instanzen. Der Timeoutwert ist derzeit auf 15 Sekunden festgelegt. Das bedeutet, dass die Instanz 15 Sekunden nach Beendigung des letzten WSL-Prozesses beendet wird. Um eine Distribution sofort zu beenden, verwenden Sie Folgendes:
wslconfig.exe /terminate <DistributionName>
Build 17763 (1809)
Allgemeine Windows-Informationen zu Build 17763 finden Sie im Windows-Blog.
WSL
Berechtigungsüberprüfung für Setpriority-Systemaufruf ist zu streng, um die gleiche Threadpriorität zu ändern[GH 1838].
Stellen Sie sicher, dass die unbeeinflusste Interruptzeit für die Startzeit verwendet wird, um zu vermeiden, dass negative Werte für clock_gettime (CLOCK_BOOTTIME) zurückgegeben werden [GH 3434]
Verarbeiten von symbolischen Verknüpfungen im WSL-binfmt-Interpreter [GH 3424]
Bessere Verarbeitung der Bereinigung des Threadgruppen-Leaderdateideskriptors.
Umschalten von WSL für die Verwendung von KeQueryInterruptTimePrecise anstelle von KeQueryPerformanceCounter zur Vermeidung eines Überlaufs [GH 3252].
Ptrace-Anfügevorgang kann zu einem ungültigen Rückgabewert von Systemaufrufen führen [GH 1731]
Korrektur mehrerer Probleme, die sich auf AF_UNIX beziehen [GH 3371]
Korrektur eines Problems, das dazu führen kann, dass WSL-Interop fehlschlägt, wenn das aktuelle Arbeitsverzeichnis weniger als 5 Zeichen lang ist [GH 3379]
Vermeiden von einer Sekunde Verzögerung bei Ausfall von Loopbackverbindungen mit nicht vorhandenen Ports [GH 3286]
Hinzufügen der Stubdatei „/proc/sys/fs/file-max“ [GH 2893]
Genauere IPv6-Bereichsinformationen.
PR_SET_PTRACER-Unterstützung [GH 3053]
Versehentliches Löschen eines edge-ausgelösten epoll-Ereignisses durch das Pipedateisystem [GH 3276]
Ausführbare Win32-Datei, die über die symbolische NTFS-Verknüpfung gestartet wurde, respektiert den Namen der symbolischen Verknüpfung nicht [GH 2909]
Verbesserte Zombieunterstützung [GH 1353]
Hinzufügen von wsl.conf-Einträgen zum Steuern des Windows-Interop-Verhaltens [GH 1493]
[interop]
enabled=false # enable launch of Windows binaries; default is true
appendWindowsPath=false # append Windows path to $PATH variable; default is true
Korrektur des Verhaltens, dass getsockname nicht immer den Porduktfamilientyp des UNIX-Sockets zurückgibt [GH 1774]
Hinzufügen von Unterstützung für TIOCSTI [GH 1863]
Nicht blockierende Sockets beim Verbindungsaufbau sollten für Schreibversuche EAGAIN zurückgeben [GH 2846]
Unterstützung von Interop auf eingebundenen VHDs [GH 3246, 3291]
Korrektur von Problem mit der Berechtigungsüberprüfung im Stammordner [GH 3304]
Eingeschränkte Unterstützung für die TTY-Tastatur-ioctls KDGKBTYPE, KDGKBMODE und KDSKBMODE.
Windows-UI-Apps sollten ausgeführt selbst dann werden, wenn Sie im Hintergrund gestartet werden.
Hinzufügen der Option wsl -u oder--user [GH 1203]
Korrektur von WSL-Startproblemen, wenn der Schnellstart aktiviert ist [GH 2576]
Hinzufügen von wslconfig/terminate zum Beenden ausgeführter Distributionen
Korrektur des Problems mit den Kontextmenüeinträgen der WSL-Shell, die Pfade mit Leerzeichen nicht ordnungsgemäß behandeln.
Bereitstellen von Unterscheidung von Groß-/Kleinschreibung pro Verzeichnis als erweitertes Attribut
ARM64: Emulieren von Cacheverwaltungsvorgängen. Beheben von dotnet-Problem.
DrvFs: Nur Escapezeichen im privaten Bereich, die einem mit Escapezeichen versehenen Zeichen entsprechen.
Korrektur eines Off-by-one-Fehlers in der Längenüberprüfung des ELF Parserinterpreters [GH 3154].
Absolute WSL-Timer mit einer Zeitangabe in der Vergangenheit werden nicht ausgelöst [GH 3091]
Sicherstellen, dass neu erstellte Analysepunkte als solche im übergeordneten Verzeichnis aufgelistet werden.
Atomarisches Erstellen von Verzeichnissen mit Berücksichtigung von Groß- und Kleinschreibung in DrvFs.
Korrektur eines zusätzlichen Problems, bei dem Multithreadingvorgänge ENOENT zurückgeben konnten, obwohl die Datei vorhanden ist. [GH 2712]
Korrektur eines WSL-Startfehlers, wenn UMCI aktiviert ist.- [GH 3020]
Hinzufügen des Explorer-Kontextmenüs zum Starten von WSL [GH 437, 603, 1836]. Halten Sie in einem Explorer-Fenster die UMSCHALTTASTE gedrückt, und klicken Sie mit der rechten Maustaste, um diese Option zu verwenden.
Korrektur des nicht blockierenden UNIX-Socketverhaltens [GH 2822, 3100]
Korrigieren des hängenden NETLINK-Befehls, wie in GH 2026 gemeldet.
Hinzufügen von Unterstützung für Einbindungsweitergabeflags [GH 2911]
Korrektur von Problem mit truncate, das keine inotify-Ereignisse verursacht [GH 2978].
Hinzufügen der Option --exec für „wsl.exe“ zum Aufrufen eine einzelne Binärdatei ohne Shell.
Hinzufügen der Option --distribution für „wsl.exe“, um eine bestimmte Distribution auszuwählen.
Eingeschränkte Unterstützung für dmesg. Anwendungen können sich jetzt in dmesg protokollieren. Der WSL-Treiber protokolliert eingeschränkte Informationen in dmesg. In Zukunft kann dies so erweitert werden, dass andere Informationen/Diagnoseinhalte vom Treiber erfasst werden.
Hinweis: dmesg wird derzeit über die /dev/kmsg-Geräteschnittstelle unterstützt. syslog-Systemaufrufschnittstelle wird noch nicht unterstützt. Daher funktionieren einige der dmesg-Befehlszeilenoptionen (z.B. -S, -C) nicht.
Änderung der Standard-GID und des Modus von seriellen Geräten entsprechend den nativen Einstellungen [GH 3042]
DrvFs unterstützt jetzt erweiterte Attribute.
Hinweis: Für DrvFs gelten einige Einschränkungen für den Namen erweiterter Attribute. Einige Zeichen (etwa „/“, „:“ und „*“) sind unzulässig, und für Namen erweiterter Attribute wird in DrvFs keine Groß- und Kleinschreibung beachtet.
Build 18252 (Skip Ahead)
Allgemeine Windows-Informationen zu Build 18252 finden Sie im Windows-Blog.
WSL
Verschieben von init- und bsdtar-Binärdateien aus der lxssmanager-DLL in einen separaten Toolsordner
Korrektur von Racebedingung um schließenden Dateideskriptor bei Verwendung von CLONE_FILES
Verarbeiten optionaler Felder in „/proc/pid/mountinfo“ bei der Übersetzung von DrvFs-Pfaden
Zulassen, dass DrvFs mklod ohne Metadatenunterstützung für S_IFREG erfolgreich ist
Für schreibgeschützte Dateien, die auf DrvFs erstellt wurden, muss das schreibgeschützte Attribut festgelegt werden [GH 3411]
Hinzufügen von /sbin/mount.drvfs-Hilfsprogramm zur Verarbeitung der DrvFs-Einbindung
Verwenden der POSIX-Umbenennung in DrvFs.
Ermöglichen der Pfadübersetzung für Volumes ohne Volume-GUID.
Build 17738 (Fast)
Allgemeine Windows-Informationen zu Build 17738 finden Sie im Windows-Blog.
WSL
Berechtigungsüberprüfung für Setpriority-Systemaufruf ist zu streng, um die gleiche Threadpriorität zu ändern[GH 1838].
Stellen Sie sicher, dass die unbeeinflusste Interruptzeit für die Startzeit verwendet wird, um zu vermeiden, dass negative Werte für clock_gettime (CLOCK_BOOTTIME) zurückgegeben werden [GH 3434]
Verarbeiten von symbolischen Verknüpfungen im WSL-binfmt-Interpreter [GH 3424]
Bessere Verarbeitung der Bereinigung des Threadgruppen-Leaderdateideskriptors.
Build 17728 (Fast)
Allgemeine Windows-Informationen zu Build 17728 finden Sie im Windows-Blog.
WSL
Umschalten von WSL für die Verwendung von KeQueryInterruptTimePrecise anstelle von KeQueryPerformanceCounter zur Vermeidung eines Überlaufs [GH 3252].
Ptrace-Anfügevorgang kann zu einem ungültigen Rückgabewert von Systemaufrufen führen [GH 1731]
Korrektur mehrerer Probleme, die sich auf AF_UNIX beziehen [GH 3371]
Korrektur eines Problems, das dazu führen kann, dass WSL-Interop fehlschlägt, wenn das aktuelle Arbeitsverzeichnis weniger als 5 Zeichen lang ist [GH 3379]
Build 18204 (Skip Ahead)
Allgemeine Windows-Informationen zu Build 18204 finden Sie im Windows-Blog.
WSL
Versehentliches Löschen eines edge-ausgelösten epoll-Ereignisses durch das Pipedateisystem [GH 3276]
Ausführbare Win32-Datei, die über die symbolische NTFS-Verknüpfung gestartet wurde, respektiert den Namen der symbolischen Verknüpfung nicht [GH 2909]
Build 17723 (Fast)
Allgemeine Windows-Informationen zu Build 17723 finden Sie im Windows-Blog.
WSL
Vermeiden von einer Sekunde Verzögerung bei Ausfall von Loopbackverbindungen mit nicht vorhandenen Ports [GH 3286]
Hinzufügen der Stubdatei „/proc/sys/fs/file-max“ [GH 2893]
Genauere IPv6-Bereichsinformationen.
PR_SET_PTRACER-Unterstützung [GH 3053]
Versehentliches Löschen eines edge-ausgelösten epoll-Ereignisses durch das Pipedateisystem [GH 3276]
Ausführbare Win32-Datei, die über die symbolische NTFS-Verknüpfung gestartet wurde, respektiert den Namen der symbolischen Verknüpfung nicht [GH 2909]
Build 17713
Allgemeine Windows-Informationen zu Build 17713 finden Sie im Windows-Blog.
WSL
Verbesserte Zombieunterstützung [GH 1353]
Hinzufügen von wsl.conf-Einträgen zum Steuern des Windows-Interop-Verhaltens [GH 1493]
[interop]
enabled=false # enable launch of Windows binaries; default is true
appendWindowsPath=false # append Windows path to $PATH variable; default is true
Korrektur des Verhaltens, dass getsockname nicht immer den Porduktfamilientyp des UNIX-Sockets zurückgibt [GH 1774]
Hinzufügen von Unterstützung für TIOCSTI [GH 1863]
Nicht blockierende Sockets beim Verbindungsaufbau sollten für Schreibversuche EAGAIN zurückgeben [GH 2846]
Unterstützung von Interop auf eingebundenen VHDs [GH 3246, 3291]
Korrektur von Problem mit der Berechtigungsüberprüfung im Stammordner [GH 3304]
Eingeschränkte Unterstützung für die TTY-Tastatur-ioctls KDGKBTYPE, KDGKBMODE und KDSKBMODE.
Windows-UI-Apps sollten ausgeführt selbst dann werden, wenn Sie im Hintergrund gestartet werden.
Build 17704
Allgemeine Windows-Informationen zu Build 17704 finden Sie im Windows-Blog.
WSL
Hinzufügen der Option wsl -u oder--user [GH 1203]
Korrektur von WSL-Startproblemen, wenn der Schnellstart aktiviert ist [GH 2576]
Hinzufügen von wslconfig/terminate zum Beenden ausgeführter Distributionen
Build 17692
Allgemeine Windows-Informationen zu Build 17692 finden Sie im Windows-Blog.
WSL
Korrektur des Problems mit den Kontextmenüeinträgen der WSL-Shell, die Pfade mit Leerzeichen nicht ordnungsgemäß behandeln.
Bereitstellen von Unterscheidung von Groß-/Kleinschreibung pro Verzeichnis als erweitertes Attribut
ARM64: Emulieren von Cacheverwaltungsvorgängen. Beheben von dotnet-Problem.
DrvFs: Nur Escapezeichen im privaten Bereich, die einem mit Escapezeichen versehenen Zeichen entsprechen.
Build 17686
Allgemeine Windows-Informationen zu Build 17686 finden Sie im Windows-Blog.
WSL
Korrektur eines Off-by-one-Fehlers in der Längenüberprüfung des ELF Parserinterpreters [GH 3154].
Absolute WSL-Timer mit einer Zeitangabe in der Vergangenheit werden nicht ausgelöst [GH 3091]
Sicherstellen, dass neu erstellte Analysepunkte als solche im übergeordneten Verzeichnis aufgelistet werden.
Atomarisches Erstellen von Verzeichnissen mit Berücksichtigung von Groß- und Kleinschreibung in DrvFs.
Build 17677
Allgemeine Windows-Informationen zu Build 17677 finden Sie im Windows-Blog.
WSL
Korrektur eines zusätzlichen Problems, bei dem Multithreadingvorgänge ENOENT zurückgeben konnten, obwohl die Datei vorhanden ist. [GH 2712]
Korrektur eines WSL-Startfehlers, wenn UMCI aktiviert ist.- [GH 3020]
Build 17666
Allgemeine Windows-Informationen zu Build 17666 finden Sie im Windows-Blog.
WSL
WARNUNG: Es gibt ein Problem, das das Ausführen von WSL in einigen AMD-Chipsätzen verhindert [GH 3134]. Eine Korrektur ist verfügbar und wird in den Insider Build-Branch integriert.
Hinzufügen des Explorer-Kontextmenüs zum Starten von WSL [GH 437, 603, 1836]. Halten Sie in einem Explorer-Fenster die UMSCHALTTASTE gedrückt, und klicken Sie mit der rechten Maustaste, um diese Option zu verwenden.
Korrektur des nicht blockierenden UNIX-Socketverhaltens [GH 2822, 3100]
Korrigieren des hängenden NETLINK-Befehls, wie in GH 2026 gemeldet.
Hinzufügen von Unterstützung für Einbindungsweitergabeflags [GH 2911]
Korrektur von Problem mit truncate, das keine inotify-Ereignisse verursacht [GH 2978].
Hinzufügen der Option --exec für „wsl.exe“ zum Aufrufen eine einzelne Binärdatei ohne Shell.
Hinzufügen der Option --distribution für „wsl.exe“, um eine bestimmte Distribution auszuwählen.
Build 17655 (Skip Ahead)
Allgemeine Windows-Informationen zu Build 17655 finden Sie im Windows-Blog.
WSL
Eingeschränkte Unterstützung für dmesg. Anwendungen können sich jetzt in dmesg protokollieren. Der WSL-Treiber protokolliert eingeschränkte Informationen in dmesg. In Zukunft kann dies so erweitert werden, dass andere Informationen/Diagnoseinhalte vom Treiber erfasst werden.
Hinweis: dmesg wird derzeit über die /dev/kmsg-Geräteschnittstelle unterstützt. syslog-Systemaufrufschnittstelle wird noch nicht unterstützt. Daher funktionieren einige der dmesg-Befehlszeilenoptionen (z.B. -S, -C) nicht.
Korrektur eines Problems, bei dem Multithreadingvorgänge ENOENT zurückgeben konnten, obwohl die Datei vorhanden ist. [GH 2712]
Build 17639 (Skip Ahead)
Allgemeine Windows-Informationen zu Build 17639 finden Sie im Windows-Blog.
WSL
Änderung der Standard-GID und des Modus von seriellen Geräten entsprechend den nativen Einstellungen [GH 3042]
DrvFs unterstützt jetzt erweiterte Attribute.
Hinweis: Für DrvFs gelten einige Einschränkungen für den Namen erweiterter Attribute. Insbesondere sind einige Zeichen (etwa „/“, „:“ und „*“) unzulässig, und für Namen erweiterter Attribute wird in DrvFs keine Groß- und Kleinschreibung beachtet.
Build 17133 (Fast)
Allgemeine Windows-Informationen zu Build 17133 finden Sie im Windows-Blog.
WSL
Fehlerbehebung für Hängen in WSL. [GH 3039, 3034]
Build 17128 (Fast)
Allgemeine Windows-Informationen zu Build 17128 finden Sie im Windows-Blog.
WSL
Keine
Build 17627 (Skip Ahead)
Allgemeine Windows-Informationen zu Build 17627 finden Sie im Windows-Blog.
WSL
Hinzufügen von Unterstützung für futex-pi-fähige Vorgänge. [GH 1006]
Beachten Sie, dass Prioritäten derzeit keine unterstützte WSL-Funktion sind, sodass Einschränkungen bestehen. Die Standardverwenund sollte jedoch aktiviert werden.
Windows-Firewallunterstützung für WSL-Prozesse. [GH 1852]
Um beispielsweise zuzulassen, dass der WSL python-Prozess an einem beliebigen Port lauschen kann, verwenden Sie Windows-CMD mit erhöhten Rechten: netsh.exe advfirewall firewall add rule name=wsl_python dir=in action=allow program="C:\users\<username>\appdata\local\packages\canonicalgrouplimited.ubuntuonwindows_79rhkp1fndgsc\localstate\rootfs\usr\bin\python2.7" enable=yes
Weitere Informationen zum Hinzufügen von Firewallregeln finden Sie unter Link.
Beachten der Standardshell des Benutzers bei der Verwendung von „wsl.exe“. [GH 2372]
Melden aller Netzwerkschnittstellen als Ethernet. [GH 2996]
Bessere Verarbeitung von beschädigten /etc/passwd-Dateien. [GH 3001]
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17618 (Skip Ahead)
Allgemeine Windows-Informationen zu Build 17618 finden Sie im Windows-Blog.
WSL
Einführung in Pseudoconsolenfunktionalität für NT-Interop [GH 988, 1366, 1433, 1542, 2370, 2406].
Der Legacyinstallationsmechanismus („lxrun.exe“) ist veraltet. Der unterstützte Mechanismus zum Installieren von Distributionen ist der Microsoft Store.
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17110
Allgemeine Windows-Informationen zu Build 17110 finden Sie im Windows-Blog.
WSL
Zulassen, dass /init aus Windows beendet wird [GH 2928].
DrvFs verwendet nun standardmäßig Unterscheidung zwischen Groß-/Kleinschreibung pro Verzeichnis (entspricht der Einbindungsoption „case=dir“).
Wenn Sie „case=force“ verwenden (das alte Verhalten), muss ein Registrierungsschlüssel festgelegt werden. Führen Sie den folgenden Befehl aus, um „case=force“ zu aktivieren, wenn Sie diese Option verwenden müssen: reg add HKLM\SYSTEM\CurrentControlSet\Services\lxss /v DrvFsAllowForceCaseSensitivity /t REG_DWORD /d 1
Wenn Sie über vorhandene Verzeichnisse verfügen, die mit WSL in einer älteren Version von Windows erstellt wurden, bei denen die Groß-/Kleinschreibung beachtet werden muss, verwenden Sie „fsutil.exe“, um sie für Unterscheidung von Groß-/Kleinschreibung zu markieren: fsutil.exe file setcasesensitiveinfo <path> enable
NULL-Beendigungszeichenfolgen werden vom uname-Systemaufruf zurückgegeben.
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17107
Allgemeine Windows-Informationen zu Build 17107 finden Sie im Windows-Blog.
WSL
Unterstützung von TCSETSF und TCSETSW für pty-Masterendpunkte [GH 2552].
Starten von gleichzeitigen Interop-Prozessen kann zu EINVAL führen [GH 2813].
Korrektur von PTRACE_ATTACH, um den richtigen Ablaufverfolgungsstatus in „/proc/pid/status“ anzuzeigen.
Korrektur der Racebedingung, bei der kurzlebige Prozesse, die mit den CLEARTID- und SETTID-Flags geklont wurden, ohne Löschen der TID-Adresse beendet werden konnten.
Anzeigen einer Meldung beim Aktualisieren der Linux-Dateisystemverzeichnisse beim Umstieg von einem Build vor 17093. Weitere Informationen zu den Änderungen für das 17093-Dateisystem finden Sie in den Anmerkungen zur Version für 17093.
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17101
Allgemeine Windows-Informationen zu Build 17101 finden Sie im Windows-Blog.
WSL
Unterstützung für signalfd. [GH 129]
Unterstützung von Dateinamen, die ungültige NTFS-Zeichen enthalten, durch Codieren als private Unicode-Zeichen. [GH 1514]
Automatisches Einbinden greift auf den schreibgeschützten Modus zurück, wenn Schreibvorgänge nicht unterstützt werden. [GH 2603]
Ermöglichen des Einfügens von Unicode-Ersatzzeichenpaaren (z.B. Emojis). [GH 2765]
Pseudodateien in „/proc“ und „/sys“ sollten „read“ und „write ready“ aus select, poll, epoll, usw. zurückgeben [GH 2838].
Korrektur eines Problems, das dazu führen kann, dass der Dienst in eine Endlosschleife übergeht, wenn die Registrierung manipuliert wurde oder beschädigt ist.
Korrektur von Netlink-Nachrichten, sodass sie mit neueren Versionen von iproute2 (upstream 4.14) funktionieren.
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17093
Allgemeine Windows-Informationen zu Build 17093 finden Sie im Windows-Blog.
Wichtig:
Wenn Sie WSL zum ersten Mal nach dem Upgrade auf diesen Build starten, müssen Sie einige Aufgaben durchführen, um die Linux-Dateisystemverzeichnisse zu aktualisieren. Dieser Vorgang kann einige Minuten in Anspruch nehmen, sodass WSL möglicherweise langsam zu starten scheint. Dies sollte nur ein Mal für jede Distribution erfolgen, die Sie aus dem Store installiert haben.
Verbesserte Unterscheidung von Groß-/Kleinschreibung in DrvFs.
DrvFs unterstützt jetzt Berücksichtigung von Groß-/Kleinschreibung pro Verzeichnis. Dies ist ein neues Flag, das für Verzeichnisse festgelegt werden kann, um anzugeben, dass alle Vorgänge in diesen Verzeichnissen mit Unterscheidung zwischen Groß-/Kleinschreibung behandelt werden sollen, sodass sogar Windows-Anwendungen Dateien ordnungsgemäß öffnen können, bei denen sich nur die Groß-/Kleinschreibung unterscheidet.
DrvFs verfügt über neue Einbindungsoptionen, die die Berücksichtigung von Groß-/Kleinschreibung pro Verzeichnis steuern.
case=force: Für alle Verzeichnisse wird zwischen Groß-/Kleinschreibung unterschieden (mit Ausnahme des Laufwerkstamms). Für neue Verzeichnisse, die mit WSL erstellt werden, wird Groß-/Kleinschreibung beachtet. Dies ist das Legacyverhalten (ausgenommen, wenn neue Verzeichnisse für Unterscheidung zwischen Groß-/Kleinschreibung markiert werden).
case=dir: Nur für Verzeichnisse mit dem Flag für Unterscheidung zwischen Groß-/Kleinschreibung pro Verzeichnis wird Groß-/Kleinschreibung beachtet, für alle anderen Verzeichnisse nicht. Für neue Verzeichnisse, die mit WSL erstellt werden, wird Groß-/Kleinschreibung beachtet.
case=dir: Nur für Verzeichnisse mit dem Flag für Unterscheidung zwischen Groß-/Kleinschreibung pro Verzeichnis wird Groß-/Kleinschreibung beachtet, für alle anderen Verzeichnisse nicht. Für neue Verzeichnisse, die mit WSL erstellt werden, wird Groß-/Kleinschreibung nicht beachtet.
Hinweis: Für Verzeichnisse, die in früheren Versionen von WSL erstellt wurden, ist dieses Flag nicht festgelegt, sodass bei Verwendung der Option „case=dir“ keine Groß-/Kleinschreibung beachtet wird. Eine Möglichkeit, dieses Flag für vorhandene Verzeichnisse festzulegen, ist in Kürze verfügbar.
Beispiel für die Einbindung mit diesen Optionen (für vorhandene Laufwerke müssen Sie zuerst die Einbindung aufheben, bevor Sie die Einbindung mit anderen Optionen ausführen können): sudo mount -t drvfs C: /mnt/c -o case=dir
Momentan ist case=force immer noch die Standardoption. Dies wird in Zukunft in case=dir geändert.
Sie können jetzt Schrägstriche in Windows-Pfaden verwenden, wenn Sie DrvFs einbinden, z.B. sudo mount -t drvfs //server/share /mnt/share
WSL verarbeitet nun die /etc/fstab-Datei während des Instanzstarts [GH 2636].
Dies erfolgt vor der automatischen Einbindung von DrvFs-Laufwerken. Alle Laufwerke, die bereits von fstab eingebunden wurden, werden nicht automatisch erneut eingebunden, sodass Sie den Einbindungspunkt für bestimmte Laufwerke ändern können.
Dieses Verhalten kann mithilfe von „wsl.conf“ deaktiviert werden.
Die mount, mountinfo- und mountstats-Dateien in „/proc“ versehen Sonderzeichen wie umgekehrte Schrägstriche und Leerzeichen ordnungsgemäß mit Escapezeichen [GH 2799]
Spezielle Dateien, die mit DrvFs erstellt werden (z.B. symbolische WSL-Verknüpfungen oder Fifos und Sockets, wenn Metadaten aktiviert sind), können nun aus Windows kopiert und verschoben werden.
WSL ist mit „wsl.conf“ besser konfigurierbar.
Es wurde eine Methode zum automatischen Konfigurieren bestimmter Funktionen in WSL hinzugefügt, die jedes Mal angewendet wird, wenn Sie das Subsystem starten. Dies umfasst Optionen für die automatische Einbindung und Netzwerkkonfiguration. Weitere Informationen hierzu finden Sie in unserem Blogbeitrag unter: https://aka.ms/wslconf
AF_UNIX ermöglicht Socketverbindungen zwischen Linux-Prozessen für WSL- und native Windows-Prozesse.
WSL- und Windows-Anwendungen können nun über Unix-Sockets miteinander kommunizieren. Stellen Sie sich vor, Sie möchten einen Dienst in Windows ausführen und sowohl für Windows- als auch für WSL-Apps verfügbar machen. Das ist nun mit UNIX-Sockets möglich. Weitere Informationen finden Sie in unserem Blogbeitrag unter https://aka.ms/afunixinterop.
WSL
Unterstützung von mmap() mit MAP_NORESERVE [GH 121, 2784]
Unterstützung von CLONE_PTRACE und CLONE_UNTRACED [GH 121, 2781]
Verarbeiten eines Nicht-SIGCHLD-Beendigungssignals im Klon [GH 121, 2781]
Stub für /proc/sys/fs/inotify/max_user_instances und /proc/sys/fs/inotify/max_user_watches [GH 1705]
Fehler beim Laden von ELF-Binärdateien, die Ladeheader mit Offsets ungleich NULL enthalten [GH 1884]
Eliminieren von nachfolgenden Seitenbytes beim Laden von Images.
Verringern der Fälle, in denen execve den Prozess automatisch beendet
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17083
Allgemeine Windows-Informationen zu Build 17083 finden Sie im Windows-Blog.
WSL
Korrektur der Fehlerüberprüfung für epoll [GH 2798, 2801, 2857]
Korrektur von Hängern beim Deaktivieren von ASLR [GH 1185, 2870]
Sicherstellen, dass mmap-Vorgänge atomarisch erscheinen [GH 2732]
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17074
Allgemeine Windows-Informationen zu Build 17074 finden Sie im Windows-Blog.
WSL
Festes Speicherformat von DrvFs-Metadaten [GH 2777] Wichtig: Die vor diesem Build erstellten DrvFs-Metadaten werden falsch oder überhaupt nicht angezeigt. Um betroffene Dateien zu korrigieren, verwenden Sie chmod und chown zum erneuten Anwenden der Metadaten.
Korrektur eines Problems mit mehreren Signalen und neu startbaren Systemaufrufen.
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17063
Allgemeine Windows-Informationen zu Build 17063 finden Sie im Windows-Blog.
WSL
DrvFs unterstützt zusätzliche Linux-Metadaten. Dies ermöglicht das Festlegen des Besitzers und des Dateimodus mit chmod/chown sowie das Erstellen spezieller Dateien, etwa Fifos, Unix-Sockets und Gerätedateien. Diese Option ist zurzeit standardmäßig deaktiviert, da Sie noch experimentell ist.
Hinweis: Wir haben einen Fehler im Metadatenformat behoben, das von DrvFs verwendet wird. Obwohl Metadaten in diesem Build für Experimente funktionieren, lesen zukünftige Builds die von diesem Build erstellten Metadaten nicht ordnungsgemäß. Möglicherweise müssen Sie den Besitzer für geänderte Dateien manuell aktualisieren, und Geräte mit einer benutzerdefinierten Geräte-ID müssen neu erstellt werden.
Um diese Funktion zu aktivieren, binden Sie DrvFs mit der Metadatenoption ein (um sie für eine vorhandene Einbindung zu aktivieren, müssen Sie die Einbindung zunächst aufheben):
mount -t drvfs C: /mnt/c -o metadata
Linux-Berechtigungen werden der Datei als zusätzliche Metadaten hinzugefügt. Sie wirken sich nicht auf die Windows-Berechtigungen aus. Beachten Sie, dass beim Bearbeiten einer Datei mithilfe eines Windows-Editors die Metadaten möglicherweise entfernt werden. In diesem Fall wird die Datei auf die Standardberechtigungen zurückgesetzt.
Hinzufügen von Einbindungsoptionen zu DrvFs, um Dateien ohne Metadaten zu steuern.
uid: die Benutzer-ID, die für den Besitzer aller Dateien verwendet wird.
gid: die Gruppen-ID, die für den Besitzer aller Dateien verwendet wird.
umask: Eine oktale Maske mit Berechtigungen, die für alle Dateien und Verzeichnisse ausgeschlossen werden sollen.
fmask: Eine oktale Maske mit Berechtigungen, die für alle regulären Dateien ausgeschlossen werden sollen.
dmask: Eine oktale Maske mit Berechtigungen, die für alle Verzeichnisse ausgeschlossen werden sollen.
Beispiel:
mount -t drvfs C: /mnt/c -o uid=1000,gid=1000,umask=22,fmask=111
Kombinieren Sie dies mit der Metadatenoption, um Standardberechtigungen für Dateien ohne Metadaten anzugeben.
Wird in einer neuen Umgebungsvariablen (WSLENV) eingeführt, um zu konfigurieren, wie Umgebungsvariablen zwischen WSL und Win32 ausgetauscht werden.
Beispiel:
WSLENV=GOPATH/l:USERPROFILE/pu:DISPLAY
WSLENV eine durch Doppelpunkte getrennte Liste von Umgebungsvariablen, die beim Starten von WSL-Prozessen aus Win32 oder Win32-Prozessen aus WSL eingeschlossen werden können. Jeder Variablen kann ein Schrägstrich als Suffix vorangestellt werden, gefolgt von Flags, um anzugeben, wie sie übersetzt werden soll.
p: Der Wert ist ein Pfad, der zwischen WSL-Pfaden und Win32-Pfaden übersetzt werden soll.
l: Der Wert ist eine Liste von Pfaden. In WSL ist es eine durch Doppelpunkte getrennte Liste. In Win32 ist es eine durch Semikolons getrennte Liste.
u: Der Wert sollte nur beim Aufrufen von WSL aus Win32 eingeschlossen werden.
w: Der Wert sollte nur beim Aufrufen von Win32 aus WSL eingeschlossen werden.
Sie können WSLENV in der BASHRC-Datei oder in der benutzerdefinierten Windows-Umgebung für Ihren Benutzer festlegen.
drvfs wird ordnungsgemäß eingebunden und behält Zeitstempel aus from tar, cp -p bei (GH 1939)
Symbolische drvfs-Verknüpfungen geben die richtige Größe an (GH 2641)
Lese-/Schreibvorgänge funktionieren für sehr große E/A-Größen (GH 2653)
waitpid funktioniert mit Prozessgruppen-IDs (GH 2534)
Erheblich verbesserte mmap-Leistung für große reserve-Regionen, Verbesserung der ghc-Leistung (GH 1671)
personality unterstützt READ_IMPLIES_EXEC, Korrekturen maxima und clisp (GH 1185)
Seitenfehlerkorrekturen im Overcommitmodus, Korrekturen sbcl (GH 1128)
clone unterstützt weitere Flagkombinationen
Unterstützung von select/epoll von epoll-Dateien (zuvor eine Nulloperation).
Benachrichtigen von ptrace über nicht implementierte Systemaufrufe.
Ignorieren von Schnittstellen, die nicht aktiv sind, beim Generieren von resolv.conf-Namenservern [GH 2694]
Aufzählen von Netzwerkschnittstellen ohne physische Adresse. [GH 2685]
Zusätzliche Fehlerbehebungen und Verbesserungen
Linux-Tools für Entwickler unter Windows verfügbar
Windows-Befehlszeilen-Toolkette enthält bsdtar (tar) und curl.
Lesen Sie diesen Blog, um mehr über das Hinzufügen dieser beiden neuen Tools zu erfahren, und sehen Sie, wie Sie das Entwicklererlebnis unter Windows formen.
AF_UNIX ist im Windows Insider SDK (17061 und höher) verfügbar.
Lesen Sie diesen Blog, um weitere Informationen zu AF_UNIX zu erhalten und mehr über die Verwendung in Windows durch Entwickler zu erfahren.
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17046
Allgemeine Windows-Informationen zu Build 17046 finden Sie im Windows-Blog.
Fest
WSL
Ermöglicht das Ausführen von Prozessen ohne ein aktives Terminal. [GH 709, 1007, 1511, 2252, 2391 usw.]
Bessere Unterstützung von CLONE_VFORK und CLONE_VM. [GH 1878, 2615]
Überspringen der TDI-Filtertreiber für WSL-Netzwerkvorgänge. [GH 1554]
DrvFs erstellt symbolische NT-Verknüpfungen, wenn bestimmte Bedingungen erfüllt sind. [GH 353, 1475, 2602]
Das Verknüpfungsziel muss relativ sein, darf keine Einbindungspunkte oder symbolische Verknüpfungen kreuzen und muss vorhanden sein.
Der Benutzer muss über SE_CREATE_SYMBOLIC_LINK_PRIVILEGE verfügen (dies erfordert normalerweise, dass Sie „wsl.exe“ mit erhöhten Rechten starten), sofern der Entwicklermodus nicht aktiviert ist.
Unter allen anderen Umständen erstellt DrvFs weiterhin symbolische WSL-Verknüpfungen.
Ermöglichen der gleichzeitigen Ausführung von WSL-Instanzen mit und ohne erhöhten Rechten.
Unterstützung von /proc/sys/kernel/Yama/ptrace_scope
Hinzufügen von wslpath zum Durchführen von Konvertierungen von WSL-<->Windows-Pfaden. [GH 522, 1243, 1834, 2327 usw.]
wslpath usage:
-a force result to absolute path format
-u translate from a Windows path to a WSL path (default)
-w translate from a WSL path to a Windows path
-m translate from a WSL path to a Windows path, with '/' instead of '\\'
EX: wslpath 'c:\users'
Konsole
Keine Korrekturen.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17040
Allgemeine Windows-Informationen zu Build 17040 finden Sie im Windows-Blog.
Fest
WSL
Keine Korrekturen seit 17035.
Konsole
Keine Korrekturen seit 17035.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17035
Allgemeine Windows-Informationen zu Build 17035 finden Sie im Windows-Blog.
Fest
WSL
Der Zugriff auf Dateien auf DrvFs kann gelegentlich mit EINVAL fehlschlagen. [GH 2448]
Konsole
Farbverlust beim Einfügen/Löschen von Zeilen im VT-Modus.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17025
Allgemeine Windows-Informationen zu Build 17025 finden Sie im Windows-Blog.
Fest
WSL
Starten anfänglicher Prozesse in einer neuen Vordergrundprozessgruppe [GH 1653, 2510].
Korrekturen der SIGHUP-Übermittlung [GH 2496].
Generieren eines Standardnamens für virtuelle Bridge generieren, wenn keine Angabe erfolgt [GH 2497].
Implementieren von /proc/sys/kernel/Random/boot_id [GH 2518].
Weitere Interop-Pipekorrekturen für stdout/stderr.
Stub für syncfs-Systemaufruf.
Konsole
Korrektur der VT-Eingabeübersetzung für Drittanbieterkonsolen [GH 111]
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Build 17017
Allgemeine Windows-Informationen zu Build 17017 finden Sie im Windows-Blog.
Fest
WSL
Ignorieren leerer ELF-Programmheader [GH 330].
Ermöglichen, dass LxssManager WSL-Instanzen für nicht interaktive Benutzer erstellt (Unterstützung für SSH und geplante Aufgaben) [GH 777, 1602].
Unterstützung von WSL->Win32->WSL-Szenarien („Inception“) [GH 1228].
Eingeschränkte Unterstützung für das Beenden von Konsolen-Apps, die über Interop aufgerufen wurden [GH 1614].
Unterstützung von Einbindungsoptionen für devpts [GH 1948].
Ptrace blockiert den Start untergeordneter Prozesse [GH 2333].
EPOLLET fehlen einige Ereignisse [GH 2462].
Rückgabe einer größeren Anzahl von Daten für PTRACE_GETSIGINFO.
Getdents mit lseek liefert falsche Ergebnisse.
Korrektur einiger Hänger von Win32-Interop-Apps, die auf Eingaben in einer Pipe warten, die keine weiteren Daten enthält.
O_ASYNC-Unterstützung für tty/pty-Dateien.
Weitere Verbesserungen und Fehlerbehebungen
Konsole
Keine konsolenbezogenen Änderungen in diesem Release.
LTP-Ergebnisse:
Tests werden zurzeit ausgeführt.
Fall Creators Update
Build 16288
Allgemeine Windows-Informationen zu Build 16288 finden Sie im Windows-Blog.
Fest
WSL
Ordnungsgemäße Initialisierung und Meldung von uid, gid und Modus für Socketdateideskriptoren [GH 2490]
Weitere Verbesserungen und Fehlerbehebungen
Konsole
Keine konsolenbezogenen Änderungen in diesem Release.
LTP-Ergebnisse:
Keine Änderung seit 16273
Build 16278
Allgemeine Windows-Informationen zu Build 162738 finden Sie im Windows-Blog.
Fest
WSL
Explizite Aufhebung der Zuordnung zugeordneter Ansichten von dateigestützten Abschnitten beim Beenden des LX MM-Status [GH 2415]
Weitere Verbesserungen und Fehlerbehebungen
Konsole
Keine konsolenbezogenen Änderungen in diesem Release.
LTP-Ergebnisse:
Keine Änderung seit 16273
Build 16275
Allgemeine Windows-Informationen zu Build 162735 finden Sie im Windows-Blog.
Fest
WSL
In diesem Release gibt es keine WSL-bezogenen Änderungen.
Konsole
Keine konsolenbezogenen Änderungen in diesem Release.
LTP-Ergebnisse:
Keine Änderung seit 16273
Build 16273
Allgemeine Windows-Informationen zu Build 16273 finden Sie im Windows-Blog.
Fest
WSL
Korrektur eines Problems, bei dem DrvFs manchmal den falschen Dateityp für Verzeichnisse gemeldet hat [GH 2392]
Ermöglichen der Erstellung von NETLINK_KOBJECT_UEVENT-Sockets zum Entsperren von Programmen, die uevent verwenden [GH 1121, 2293, 2242, 2295, 2235, 648, 637]
Hinzufügen von Unterstützung für nicht blockierende Verbindungen [GH 903, 1391, 1584, 1585, 1829, 2290, 2314]
Implementieren des CLONE_FS-Klonsystem-Aufrufflags [GH 2242]
Korrektur von Problemen im Zusammenhang mit der nicht ordnungsgemäßen Behandlung von Registerkarten oder Anführungszeichen in NT-Interop [GH 1625, 2164]
Beheben des Fehlers „Zugriff verweigert“ beim Versuch, WSL-Instanzen erneut zu starten [GH 651, 2095]
Implementieren von Futex-Vorgängen FUTEX_REQUEUE und FUTEX_CMP_REQUEUE [GH 2242]
Korrigieren von Berechtigungen für verschiedene SysFs-Dateien [GH 2214]
Korrigieren des Hängens des Haskell-Stapels während des Setups [GH 2290]
Implementieren der Flags „C“, „O“ und „P“ von binfmt_misc [GH 2103]
Hinzufügen von /proc/sys/kernel/shmmax/shmmni und /threads-max [GH 1753]
Hinzufügen partieller Unterstützung für den ioprio_set-Systemaufruf [GH 498]
Stub für SO_REUSEPORT und Hinzufügen von Unterstützung für SO_PASSCRED für netlink-Sockets [GH 69]
Rückgabe anderer Fehlercodes aus RegisterDistribution, wenn zurzeit eine Distribution installiert oder deinstalliert wird.
Ermöglichen des Aufhebens der Registrierung von teilweise installierten WSL-Distributionen über „wslconfig.exe“
Korrektur des Hängens des Python-Sockettests von udp::msg_peek
Weitere Verbesserungen und Fehlerbehebungen
Konsole
Keine konsolenbezogenen Änderungen in diesem Release.
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
In Build 16257 hat WSL beim Aufzählen von Windows-Dateien/-Ordnern über /mnt/c/... Probleme.
Dieses Problem wurde behoben und sollte im Insider-Builds in der Woche ab dem 14.08.2017 veröffentlicht werden.
Build 16251
Allgemeine Windows-Informationen zu Build 16251 finden Sie im Windows-Blog.
Fest
WSL
Entfernen des Beta-Tags aus der optionalen WSL-Komponente. Weitere Informationen finden Sie im Blogbeitrag.
Ordnungsgemäße Initialisierung der saved-set uid und gid für set-user-ID- and set-group-ID-Binärdateien bei der Ausführung [GH 962, 1415, 2072]
Hinzufügen von Unterstützung für PTRACE_O_TRACEEXIT [GH 555]
Hinzufügen von Unterstützung für PTRACE_GETFPREGS und PTRACE_GETREGSET mit NT_FPREGSET [GH 555]
Korrektur von ptrace, um bei ignorierten Signalen anzuhalten
Weitere Verbesserungen und Fehlerbehebungen
Konsole
Keine konsolenbezogenen Änderungen in diesem Release.
Allgemeine Windows-Informationen zu Build 16241 finden Sie im Windows-Blog.
Fest
WSL
In diesem Release gibt es keine WSL-bezogenen Änderungen.
Konsole
Korrektur für die Ausgabe des falschen Zeichens für Schnittlinien-DEC, ursprünglich hier gemeldet
Korrektur, dass kein Ausgabetext in Codepage 65001 (UTF8) angezeigt wird
Übertragen Sie an den RGB-Werten einer Farbe vorgenommene Änderungen nicht an andere Teile der Palette bei Änderungen der Auswahl. Dadurch wird die Verwendung des Konsoleneigenschaftenblatts erheblich vereinfacht.
STRG+S funktioniert anscheinend nicht ordnungsgemäß
Un-Bold/-Dim fehlt in ANSI-Escapecodes vollständig [GH 2174]
Die Konsole unterstützt VIM-Farbdesigns nicht ordnungsgemäß [GH 1706]
Bestimmte Zeichen können nicht eingefügt werden [GH 2149]
Die Größenänderung von dynamischem Umbruch interagiert seltsam mit der Größenänderung eines Bash-Fensters, wenn sich die Inhalte in der Bearbeitungs-/Befehlszeile befinden [GH-Verbindung 1123]
STRG+L hinterlässt Fragmente auf dem Bildschirm [GH 1978]
Konsolenrenderingfehler bei der Anzeige von VT für HDPI [GH 1907]
Japanische Zeichen sehen mit dem Unicode-Zeichen U+30FB seltsam aus [GH 2146]
Weitere Verbesserungen und Fehlerbehebungen
Build 16237
Allgemeine Windows-Informationen zu Build 16237 finden Sie im Windows-Blog.
Fest
Verwenden von Standardattributen für Dateien ohne E/As in lxfs (root, root, 0000)
Hinzufügen von Unterstützung für Distributionen, die erweiterte Attribute verwenden
Korrektur des Auffüllens für von getdents und getdents64 zurückgegebene Einträge
Korrektur der Berechtigungsüberprüfung für den SHM_STAT-Systemaufruf [GH 2068]
Korrektur des falschen anfänglichen epoll-Zustands für ttys [GH 2231]
Korrektur, dass DrvFs readdir nicht alle Einträge zurückgibt [GH 2077]
Korrektur von LxFs readdir, wenn Dateien nicht verknüpft sind [GH 2077]
Ermöglichen des erneuten Öffnens von nicht verknüpfter drvfs-Dateien über procfs
Hinzufügen einer Außerkraftsetzung des globalen Registrierungsschlüssels zum Deaktivieren von WSL-Features (Interop/Laufwerkeinbindung)
Korrektur falscher Blockanzahl in „stat“ für DrvFs (und LxFs) [GH 1894]
Weitere Verbesserungen und Fehlerbehebungen
Build 16232
Allgemeine Windows-Informationen zu Build 16232 finden Sie im Windows-Blog.
Fest
In diesem Release gibt es keine WSL-bezogenen Änderungen.
Build 16226
Allgemeine Windows-Informationen zu Build 16226 finden Sie im Windows-Blog.
Fest
Unterstützung von auf xattr bezogenen Systemaufrufen (getxattr, setxattr, listxattr, removexattr).
xattr-Unterstützung für security.capability.
Verbesserte Kompatibilität mit bestimmten Dateisystemen und Filtern, einschließlich Nicht-MS-SMB-Servern. [GH #1952]
Verbesserte Unterstützung für OneDrive-Platzhalter, GVFS-Platzhalter und komprimierte Compact OS-Dateien.
Weitere Verbesserungen und Fehlerbehebungen
Build 16215
Allgemeine Windows-Informationen zu Build 16215 finden Sie im Windows-Blog.
Fest
Für WSL ist der Entwicklermodus nicht mehr erforderlich.
Unterstützung von Verzeichnisverbindungen in drvfs.
Verarbeiten der Deinstallation von appx-Paketen der WSL-Distribution.
Aktualisieren von procfs, um private und freigegebene Zuordnungen anzuzeigen.
Hinzufügen einer Möglichkeit für „wslconfig.exe“ zum Bereinigen von Distributionen, die teilweise installiert oder deinstalliert wurden.
Hinzufügen von Unterstützung für IP_MTU_DISCOVER für TCP-Sockets. [GH 1639, 2115, 2205]
Ableiten der Protokollfamilie für Routen zu AF_INADDR.
Verbesserungen an seriellen Geräten [GH 1929].
Build 16199
Allgemeine Windows-Informationen zu Build 16199 finden Sie im Windows-Blog.
Fest
In diesen Releases gibt es keine WSL-bezogenen Änderungen.
Build 16193
Allgemeine Windows-Informationen zu Build 16193 finden Sie im Windows-Blog.
Fest
Racebedingung zwischen dem Senden von SIGCONT und einer Threadgruppe, die beendet wird [GH 1973]
Ändern von TTY-und PTY-Geräten zum Melden von FILE_DEVICE_NAMED_PIPE anstelle von FILE_DEVICE_CONSOLE [GH 1840]
SSH-Korrektur für IP_OPTIONS
Verschieben der DrvFs-Einbindung in den init-Daemon [GH 1862, 1968, 1767, 1933]
Hinzufügen von Unterstützung in DrvFs für die folgenden symbolischen NT-Verknüpfungen.
Build 16184
Allgemeine Windows-Informationen zu Build 16184 finden Sie im Windows-Blog.
Fest
Entfernen des apt-Paketverwaltungstasks (lxrun.exe /update) wurde entfernt.
Korrektur der Nichtanzeige der Ausgabe aus Windows-Prozessen in node.js [GH 1840]
Lockern der Ausrichtungsanforderungen in lxcore [GH 1794]
Korrektur der Verarbeitung des AT_EMPTY_PATH-Flags in mehreren Systemaufrufen.
Korrektur eines Problems, bei dem das Löschen von DrvFs-Dateien mit geöffneten Handles bewirkt, dass die Datei nicht definiertes Verhalten aufweist [GH 544, 966, 1357, 1535, 1615]
„/etc/hosts“ erbt nun Einträge von der Windows-Hostdatei (%windir%\system32\drivers\etc\hosts) [GH 1495]
Build 16179
Allgemeine Windows-Informationen zu Build 16179 finden Sie im Windows-Blog.
Fest
Keine WSL-Änderungen in dieser Woche.
Build 16176
Allgemeine Windows-Informationen zu Build 16176 finden Sie im Windows-Blog.
Ordnungsgemäße Verarbeitung von Berechtigungen für Netzwerkdateisysteme in drvfs
Hinzufügen von Unterstützung für Remotelaufwerke zu drvfs
Ermöglichen von FAT-Unterstützung in drvfs
Zusätzliche Korrekturen und Verbesserungen
LTP-Ergebnisse
Keine Änderungen seit 15042
Build 16170
Allgemeine Windows-Informationen zu Build 16170 finden Sie im Windows-Blog.
Wir haben einen neuen Blogbeitrag veröffentlicht, in dem unsere Anstrengungen beim Testen von WSL erläutert werden.
Fest
Unterstützung für Socketoption IP_ADD_MEMBERSHIP und IPV6_ADD_MEMBERSHIP [GH 1678]
Hinzufügen von Unterstützung für PTRACE_OLDSETOPTIONS. [GH 1692]
Zusätzliche Korrekturen und Verbesserungen
LTP-Ergebnisse
Keine Änderungen seit 15042
Build 15046 für Windows 10 Creators Update
Es gibt keine weiteren WSL-Korrekturen oder-Funktionen, die für die Einbindung in das Creators Update in Windows 10 geplant sind. Die Anmerkungen zu dieser Version von WSL werden in den kommenden Wochen fortgesetzt, um Ergänzungen für das nächste Hauptupdate von Windows aufzuführen. Allgemeine Windows-Informationen zu Build 15046 und zukünftigen Insider Releases finden Sie im Windows-Blog.
Build 15042
Allgemeine Windows-Informationen zu Build 15042 finden Sie im Windows-Blog.
Fest
Korrektur eines Deadlocks beim Entfernen eines Pfades, der auf „..“ endet
Korrektur eines Problems, bei dem FIONBIO bei Erfolg 0 zurückgibt [GH 1683]
Korrektur eines Problems bei Lesevorgängen mit einer Länge von Null von Internetdatagrammsockets
Korrektur eines möglichen Deadlocks aufgrund einer Racebedingung bei der drvfs inode-Suche [GH 1675]
Erweiterte Unterstützung für Hilfsdaten von Unix-Sockets, SCM_CREDENTIALS und SCM_RIGHTS [GH 514, 613, 1326]
Systemaufrufe gesamt: 384 Implementiert gesamt: 235 Mit Stub versehen gesamt: 22 Nicht implementiert gesamt: 127
Build 15007
Allgemeine Windows-Informationen zu Build 15007 finden Sie im Windows-Blog.
Bekanntes Problem
Es gibt einen bekannten Fehler, bei dem die Konsole einige Eingaben über STRG+<key> nicht erkennt. Dies schließt den Befehl STRG+C ein, der als normaler C-Tastendruck fungiert.
Problemumgehung: Ordnen Sie STRG+C eine alternative Taste zu. Gehen Sie beispielsweise folgendermaßen vor, um STRG+K der Tastenkombination STRG+C zuzuordnen: stty intr \^k. Diese Zuordnung erfolgt pro Terminal und muss jedes Mal ausgeführt werden, wenn Bash gestartet wird. Benutzer können die Option zum Einbeziehen in ihre .bashrc-Datei untersuchen
Fest
Korrektur eines Problems, bei dem die Ausführung von WSL 100 % eines CPU-Kerns verbraucht
Socketoption IP_PKTINFO, IPV6_RECVPKTINFO wird jetzt unterstützt. (GH #851, 987)
Abschneiden der physischen Adresse der Netzwerkschnittstelle auf 16 Bytes in lxcore (GH #1452, 1414, 1343, 468, 308)
Allgemeine Windows-Informationen zu Build 15002 finden Sie im Windows-Blog.
Bekanntes Problem
Zwei bekannte Probleme:
Es gibt einen bekannten Fehler, bei dem die Konsole einige Eingaben über STRG+<key> nicht erkennt. Dies schließt den Befehl STRG+C ein, der als normaler C-Tastendruck fungiert.
Problemumgehung: Ordnen Sie STRG+C eine alternative Taste zu. Gehen Sie beispielsweise folgendermaßen vor, um STRG+K der Tastenkombination STRG+C zuzuordnen: stty intr \^k. Diese Zuordnung erfolgt pro Terminal und muss jedes Mal ausgeführt werden, wenn Bash gestartet wird. Benutzer können die Option zum Einbeziehen in ihre .bashrc-Datei untersuchen
Während der Ausführung von WSL werden von einem Systemthread 100 % eines CPU-Kerns beansprucht. Die Ursache wurde untersucht und intern behoben.
Fest
Alle Bash-Sitzungen müssen jetzt auf derselben Berechtigungsebene erstellt werden. Der Versuch, eine Sitzung auf einer anderen Ebene zu starten, wird blockiert. Dies bedeutet, dass Administrator-und Nicht-Administratorkonsolen nicht gleichzeitig ausgeführt werden können. (GH #626)
Implementierung der folgenden NETLINK_ROUTE-Meldungen (erfordert Windows-Administrator)
RTM_NEWADDR (unterstützt ip addr add)
RTM_NEWROUTE (unterstützt ip route add)
RTM_DELADDR (unterstützt ip addr del)
RTM_DELROUTE (unterstützt ip route del)
Die geplante Tasküberprüfung für zu aktualisierende Pakete wird nicht mehr über eine getaktete Verbindung ausgeführt (GH #1371)
Korrektur eines Fehlers, bei dem die Weiterleitung unterbrochen wird. Beispiel: bash -c "ls -alR /" | bash -c "cat" (GH #1214)
Implementierung der TCP_KEEPCNT-Socketoption (GH #843)
Implementierung der IP_MTU_DISCOVER INET-Socketoption (GH #720, 717, 170, 69)
Entfernen der Legacyfnktionalität zum Ausführen von NT-Binärdateien aus init mit NT-Pfadsuche. (GH #1325)
Korrektur des Modus von /dev/kmsg zum Zulassen von Gruppen-/sonstigem Lesezugriff (0644) (GH #1321)
Implementierung von /proc/sys/kernel/random/uuid (GH #1092)
Korrektur eines Fehlers, bei dem die Startzeit des Prozesses als Jahr 2432 angezeigt wurde (GH #974)
Wechseln der TERM-Standardumgebungsvariablen in xterm-256color (GH #1446)
Änderung der Art und Weise, in der der Prozesscommit während des Prozessforks berechnet wird. (GH #1286)
Implementierung von /proc/sys/vm/overcommit_memory. (GH #1286)
Implementierung der /proc/net/route-Datei (GH #69)
Korrektur eines Fehlers, bei dem der Verknüpfungsname falsch lokalisiert wurde (GH #696)
Korrektur der fehlerhaften ELF-Verarbeitungslogik, die die Programmheader nicht ordnungsgemäß so überprüft, dass sie kleiner als (oder gleich) PATH_MAX sein müssen. (GH #1048)
Implementierung des statfs-Rückrufs für procfs, sysfs, cgroupfs und binfmts (GH #1378)
Korrektur der AptPackageIndexUpdate-Fenster, die nicht geschlossen werden (GH #1184, auch in GH #1193 beschrieben)
Hinzufügen von ASLR-Personality, ADDR_NO_RANDOMIZE-Unterstützung. [GH #1148, 1128]
Verbesserung von PTRACE_GETSIGINFO, SIGSEGV für ordnungsgemäße gdb-Stapelüberwachungen während AV (GH #875)
Elf-Verarbeitung schlägt für patchelf-Binärdateien nicht mehr fehl. [GH #471]
VPN DNS-Weitergabe an /etc/resolv.conf (GH #416, 1350)
Verbesserungen an TCP Close für eine zuverlässigere Datenübertragung. (GH #610, 616, 1025, 1335)
Jetzt Rückgabe des richtigen Fehlercodes, wenn zu viele Dateien geöffnet werden (EMFILE). (GH #1126, 2090)
Windows-Überwachungsprotokoll erfasst jetzt den Imagenamen in Process Create Audit.
Jetzt normaler Fehler beim Starten von „bash.exe“ in einem Bash-Fenster.
Hinzufügen einer Fehlermeldung, wenn Interop nicht auf ein Arbeitsverzeichnis unter LxFs zugreifen kann (z.B. BASHRC-Datei von „notepad.exe“).
Korrektur eines Problems, bei dem der Windows-Pfad in WSL abgeschnitten wurde
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
shmctl shmget shmdt shmat
Build 14986
Allgemeine Windows-Informationen zu Build 14986 finden Sie im Windows-Blog.
Fest
Korrektur von Fehlerüberprüfungen mit Netlink und Pty IOCTLs
Kernel Version meldet nun 4.4.0-43 aus Gründen der Konsistenz mit Xenial
„Bash.exe“ wird jetzt gestartet, wenn die Eingabe an „nul:“ gerichtet ist (GH #1259)
Thread-IDs werden nun ordnungsgemäß in procfs erfasst (GH #967)
Flags IN_UNMOUNT | IN_Q_OVERFLOW | IN_IGNORED | IN_ISDIR werden jetzt in inotify_add_watch() unterstützt (GH #1280)
Implementierung von timer_create und verwandten Systemaufrufen. Dies ermöglicht die GHC-Unterstützung (GH #307).
Korrektur eines Problems, bei dem Ping eine Zeitangabe von 0,000 ms zurückgab (GH #1296)
Rückgabe des richtigen Fehlercodes, wenn zu viele Dateien geöffnet werden.
Korrektur eines Problems in WSL, bei dem die Netlink-Anforderung für Netzwerkschnittstellendaten mit EINVAL fehlschlägt, wenn die Hardwareadresse der Schnittstelle 32 Bytes groß ist (z.B. die Teredo-Schnittstelle)
Beachten Sie, dass das Linux-Hilfsprogramm „ip“ einen Fehler enthält, bei dem ein Absturz erfolgt, wenn WSL eine 32-Byte-Hardwareadresse meldet. Dies ist ein Fehler in „ip“, nicht in WSL. Mit dem Hilfsprogramm „ip“ wird die Länge des Zeichenfolgenpuffers fest codiert, der zum Ausgeben der Hardwareadresse verwendet wird, und dieser Puffer ist zu klein, um eine 32-Byte-Hardwareadresse auszugeben.
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
Allgemeine Windows-Informationen zu Build 14971 finden Sie im Windows-Blog.
Fest
Aufgrund von Umständen, die sich unserer Kontrolle entziehen, gibt es in diesem Build keine Updates für das Windows-Subsystem für Linux. Regelmäßig geplante Updates werden mit dem nächsten Release fortgesetzt.
LTP-Ergebnisse:
Keine Änderungen seit 14965 Anzahl bestandener Tests: 664 Anzahl nicht bestandener Tests (fehlerhaft, übersprungen usw.): 263
Build 14965
Allgemeine Windows-Informationen zu Build 14965 finden Sie im Windows-Blog.
Fest
Unterstützung für Netlink-Sockets RTM_GETLINK und RTM_GETADDR des NETLINK_ROUTE-Protokolls (GH #468)
Aktiviert ifconfig- und ip-Befehle für die Netzwerkenumeration.
„/sbin“ befindet sich jetzt standardmäßig im Pfad des Benutzers.
Der NT-Benutzerpfad wird jetzt standardmäßig an den WSL-Pfad angefügt (Sie können nun also „notepad.exe“ eingeben, ohne dem Linux-Pfad System32 hinzuzufügen).
Hinzufügen von Unterstützung für /proc/sys/kernel/cap_last_cap
NT-Binärdateien können nun aus WSL gestartet werden, wenn das aktuelle Arbeitsverzeichnis Nicht-ANSI-Zeichen enthält (GH #1254)
Ermöglichen des Herunterfahrens für getrennten UNIX-Streamsocket
Hinzufügen von Unterstützung für PR_GET_PDEATHSIG.
Hinzufügen von Unterstützung für CLONE_PARENT
Korrektur eines Fehlers, bei dem die Weiterleitung unterbrochen wird. Beispiel: bash -c "ls -alR /" | bash -c "cat" (GH #1214)
Verarbeiten von Anforderungen zum Herstellen einer Verbindung mit dem aktuellen Terminal.
Markieren Sie /proc/<pid>/oom_score_adj als beschreibbar.
Hinzufügen des Ordners „/sys/fs/cgroup“.
sched_setaffinity sollte den Wert der Affinitätsbitsmaske zurückgeben.
Korrektur der ELF-Validierungslogik, die fälschlicherweise annimmt, dass Interpreterpfade weniger als 64 Zeichen lang sein müssen. (GH #743)
Geöffnete Dateideskriptoren können das Konsolenfenster geöffnet lassen (GH #1187)
Korrektur eines Fehlers, bei dem rename() mit einem nachgestellten Schrägstrich für den Zielnamen fehlschlägt (GH #1008)
Implementierung der/proc/net/dev-Datei
Korrektur von Pings mit 0,000 ms aufgrund der Timerauflösung.
Allgemeine Windows-Informationen zu Build 14955 finden Sie im Windows-Blog.
Fest
Aufgrund von Umständen, die sich unserer Kontrolle entziehen, gibt es in diesem Build keine Updates für das Windows-Subsystem für Linux. Regelmäßig geplante Updates werden mit dem nächsten Release fortgesetzt.
Allgemeine Windows-Informationen zu Build 14951 finden Sie im Windows-Blog.
Neues Feature: Windows-/Ubuntu-Interoperabilität
Windows-Binärdateien können jetzt direkt über die WSL-Befehlszeile aufgerufen werden. Dadurch haben Benutzer die Möglichkeit, mit Ihrer Windows-Umgebung und dem -System auf eine Weise zu interagieren, die bisher nicht möglich war. Als kurzes Beispiel können Benutzer nun die folgenden Befehle ausführen:
Ubuntu 16.04 (Xenial) wird jetzt für alle neuen WSL-Instanzen installiert. Benutzer mit vorhandenen 14.04-Instanzen (Trusty) erhalten kein automatisches Upgrade.
Das während der Installation festgelegte Gebietsschema wird jetzt angezeigt
Terminalverbesserungen, einschließlich des Fehlers bei der Umleitung eines WSL-Prozesses an eine Datei, funktionieren nicht immer
Die Konsolenlebensdauer muss an die Lebensdauer von „bash.exe“ gebunden sein
Die Größe des Konsolenfensters sollte die sichtbare Größe und nicht die Puffergröße verwenden
Allgemeine Windows-Informationen zu Build 14946 finden Sie im Windows-Blog.
Fest
Korrektur eines Problems, das das Erstellen von WSL-Benutzerkonten für Benutzer mit NT-Benutzernamen verhindert hat, die Leerzeichen oder Anführungszeichen enthalten.
Änderung von VolFs und DrvFs, damit 0 für die Verknüpfungsanzahl des Verzeichnisses im Status zurückgegeben wird
Unterstützung der IPV6_MULTICAST_HOPS-Socketoption.
Einschränkung auf eine einzige Konsolen-E/A-Schleife pro TTY. Der folgende Befehl ist beispielsweise möglich:
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
pivot_root
Build 14936
Allgemeine Windows-Informationen zu Build 14936 finden Sie im Windows-Blog.
Hinweis: WSL wird in einem zukünftigen Release Ubuntu Version 16.04 (Xenial) anstelle von Ubuntu 14.04 (Trusty) installieren. Diese Änderung gilt für Insider, die neue Instanzen installieren (lxrun.exe /install oder erste Ausführung von „bash.exe“). Vorhandene Instanzen mit Trusty werden nicht automatisch aktualisiert. Benutzer können mit dem Befehl „do-release-upgrade“ Ihr Trusty-Image auf Xenial aktualisieren.
Bekanntes Problem
Bei WSL treten Probleme mit einigen Socketimplementierungen auf. Die Fehlerüberprüfung manifestiert sich als Absturz mit dem Fehler „ATTEMPTED EXECUTE OF NOEXECUTE MEMORY“. Die häufigste Variante dieses Problems ist ein Absturz bei der Verwendung von SSH. Die Ursache ist bei internen Builds korrigiert und wird so bald wie möglich in Insider gepusht.
Fest
Der chroot-Systemaufruf wurde implementiert.
Verbesserungen in inotify einschließlich Unterstützung für Benachrichtigungen, die von Windows-Anwendungen auf DrvFs generiert werden
Korrektur: Inotify-Unterstützung von Änderungen, die von Windows-Anwendungen stammen, ist zurzeit nicht verfügbar.
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
chroot
Build 14931
Allgemeine Windows-Informationen zu Build 14931 finden Sie im Windows-Blog.
Fest
Aufgrund von Umständen, die sich unserer Kontrolle entziehen, gibt es in diesem Build keine Updates für das Windows-Subsystem für Linux. Regelmäßig geplante Updates werden mit dem nächsten Release fortgesetzt.
Build 14926
Allgemeine Windows-Informationen zu Build 14926 finden Sie im Windows-Blog.
Fest
Ping funktioniert nun in Konsolen, die nicht über Administratorberechtigungen verfügen.
Ping6 wird jetzt auch ohne Administratorberechtigungen unterstützt.
Inotify-Unterstützung für Dateien, die über WSL geändert wurden. (GH #216)
Allgemeine Windows-Informationen zu Build 14915 finden Sie im Windows-Blog.
Fest
Socketpair für Unix-Datagrammsockets (GH #262)
Unix-Socketunterstützung für SO_REUSEADDR
Unix-Socketunterstützung für SO_BROADCAST (GH #568)
Unix-Socketunterstützung für SOCK_SEQPACKET (GH #758, #546)
Hinzufügen von Unterstützung für unix datagram socket send, recv und shutdown
Korrektur einer Fehlerüberprüfung aufgrund einer ungültigen Überprüfung des mmap-Parameters für nicht feste Adressen. (GH #847)
Unterstützung für das Anhalten/Fortsetzen von Terminalzuständen
Unterstützung für TIOCPKT ioctl zum Entsperren des Bildschirmhilfsprogramms (GH #774)
Bekanntes Problem: Funktionstasten sind nicht funktionsfähig
Korrektur einer Racebedingung in TimerFd, die dazu führen konnte, dass auf einen freigegebenen Member „ReaderReady“ durch LxpTimerFdWorkerRoutine zugegriffen wurde (GH #814)
Aktivieren der Unterstützung für erneut startbaren Systemaufruf für futex, poll und clock_nanosleep
Hinzufügen von Unterstützung für Bindungseinbindung
Unterstützung für Aufheben der Freigabe für Einbindungsnamespace
Bekanntes Problem: Beim Erstellen eines neuen Einbindngsnamespace mit unshare(CLONE_NEWNS) zeigt das aktuelle Arbeitsverzeichnis weiterhin auf den alten Namespace
Weitere Verbesserungen und Fehlerbehebungen
Build 14905
Allgemeine Windows-Informationen zu Build 14905 finden Sie im Windows-Blog.
Fest
Erneut startbare Systemaufrufe werden jetzt unterstützt (GH #349, GH #520)
Symbolische Verknüpfungen mit Verzeichnissen, die auf / wenden, sind jetzt funktionstüchtig (GH #650)
Implementierung von RNDGETENTCNT ioctl für „/dev/random“
Implementierung der /proc/[pid]/mounts, /proc/[pid]/mountinfo- und /proc/[pid]/mountstats-Dateien
Weitere Fehlerbehebungen und Verbesserungen
Build 14901
Der erste Insider-Build für das Windows 10 Anniversary Update-Release.
Allgemeine Windows-Informationen zu Build 14901 finden Sie im Windows-Blog.
Fest
Korrektur eines Problems mit nachfolgenden Schrägstrichen
Befehle wie $ mv a/c/ a/b/ funktionieren jetzt
Installation von Eingabeaufforderungen, wenn das Ubuntu-Gebietsschema auf das Windows-Gebietsschema festgelegt werden soll
Procfs-Unterstützung für den Ordner „ns“
Hinzufügen von „mount“ und „unmount“ für tmpfs-, procfs-und sysfs-Dateisysteme
Korrektur der 32-Bit-ABI-Signatur von mklod [at]
Verschieben von Unix-Sockets in Dispatchmodell
Mit setsockopt festgelegte recv-Puffergröße von INET-Socket muss berücksichtigt werden
Implementierung des MSG_CMSG_CLOEXEC-Unis-Socket-Empfangsnachrichtenflags
stdin/stdout-Pipeumleitung des Linux-Prozesses (GH #2)
Ermöglicht das Weiterleiten von bash -c-Befehlen in CMD. Beispiel: >dir | bash -c "grep foo"
Bash kann nun auf Systemen mit mehreren Auslagerungsdateien installiert werden (GH #538, #358)
Standardpuffergröße des INET-Sockets sollte mit der Größe des Ubuntu- Standardsetups übereinstimmen
Ausrichten von xattr-Systemaufrufen an listxattr
Nur Rückgabe von Schnittstellen mit einer gültigen IPv4-Adresse von SIOCGIFCONF
Korrektur der Signalatandardaktion, wenn von ptrace eingefügt
Implementierung von /proc/sys/vm/min_free_kbytes
Verwenden der Computerkontext-Registerwerte beim Wiederherstellen von Kontext in sigreturn
Dadurch wird das Problem behoben, dass Java und javac bei einigen Benutzern nicht mehr reagiert haben
Implementierung von /proc/sys/kernel/hostname
Unterstützung von Systemaufrufen
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
waitid epoll_pwait
Update von Build 14388 auf Windows 10 Anniversary Update
Allgemeine Windows-Informationen zu Build 14388 finden Sie im Windows-Blog.
Fest
Korrekturen als Vorbereitung auf das Windows 10 Anniversary Update am 02.08.
Weitere Informationen zu WSL im Anniversary Update finden Sie in unserem Blog.
Build 14376
Allgemeine Windows-Informationen zu Build 14376 finden Sie im Windows-Blog.
Fest
Entfernen einiger Instanzen, in denen apt-get nicht mehr reagiert (GH #493)
Korrektur eines Problems, bei dem leere Einbindungen nicht ordnungsgemäß verarbeitet wurden
Korrektur eines Problems, bei dem Ramdisks nicht ordnungsgemäß eingebunden wurden
Änderung von „unix socket accept“ für die Unterstützung von Flags (Teil von GH #451)
Korrektur eines allgemeinen netzwerkbezogenen Bluescreens
Korrektur des Bluescreens beim Zugriff auf /proc/[pid]/task (GH #523)
Korrektur hoher CPU-Auslastung für einige Pty-Szenarien (GH #488, #504)
Weitere Fehlerbehebungen und Verbesserungen
Build 14371
Allgemeine Windows-Informationen zu Build 14371 finden Sie im Windows-Blog.
Fest
Korrektur der Timingracebedingung mit SIGCHLD und wait() bei Verwendung von ptrace
Korrektur von Verhalten, wenn Pfade ein nachfolgendes Zeichen / aufweisen (GH #432)
Korrektur eines Problems, bei dem Umbenennen/Aufheben der Verknüpfung aufgrund von geöffneten Handles für untergeordnete Elemente fehlschlägt
Weitere Fehlerbehebungen und Verbesserungen
Build 14366
Allgemeine Windows-Informationen zu Build 14366 finden Sie im Windows-Blog.
Fest
Korrektur der Dateierstellung durch symbolische Verknüpfungen
Hinzugefügter von listxattr für Python (GH 385)
Weitere Fehlerbehebungen und Verbesserungen
Unterstützung von Systemaufrufen
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
listxattr
Build 14361
Allgemeine Windows-Informationen zu Build 14361 finden Sie im Windows-Blog.
Fest
Für DrvFs wird nun bei der Ausführung in Bash unter Ubuntu unter Windows die Groß-/Kleinschreibung beachtet.
Benutzer können case.txt und CASE.TXT auf Ihren /mnt/c-Laufwerken verwenden
Die Beachtung von Groß-/Kleinschreibung wird nur in Bash unter Ubuntu unter Windows unterstützt. Außerhalb von Bash zeigt NTFS die Dateien richtig an, aber es kann zu unerwartetem Verhalten bei der Interaktion mit den Dateien von Windows kommen.
Für den Stamm der einzelnen Volumes (d.h. /mnt/c) wird die Groß-/Kleinschreibung nicht beachtet.
Weitere Informationen zum Verarbeiten dieser Dateien in Windows finden Sie hier.
Stark verbesserte PTY-/TTY-Unterstützung. Anwendungen wie TMUX werden jetzt unterstützt (GH #40)
Korrektur eines Installationsproblems, bei dem Benutzerkonten nicht immer erstellt wurden
Optimierte Befehlszeilen-Argumentstruktur, die eine extrem lange Argumentliste zulässt. (GH #153)
Jetzt können chmod read_only-Dateien aus DrvFs gelöscht werden.
Korrektur einiger Instanzen, bei denen das Terminal beim Trennen nicht mehr reagiert (GH #43)
chmod und chown funktionieren jetzt auf TTY-Geräten
Verbindung mit 0.0.0.0 und :: as localhost zulassen (GH #388)
Sendmsg/recvmsg verarbeitet nun eine E/A-Vektorlänge > 1 (Teil von GH #376)
Benutzer können jetzt die automatisch generierte Hostdatei ablehnen (GH #398)
Automatisches Zuordnen des Linux-Gebietsschemas zum NT-Gebietsschema während der Installation (GH #11)
Hinzufügen der /proc/sys/vm/swappiness-Datei (GH #306)
strace wird jetzt ordnungsgemäß beendet
Ermöglichen des erneuten Öffnens von Pipes über /proc/self/fd (GH #222)
Ausblenden von Verzeichnissen unter „%LOCALAPPDATA%\lxss“ aus DrvFs (GH #270)
Bessere Verarbeitung von bash.exe ~. Befehle wie „bash ~ -c ls“ werden jetzt unterstützt (GH #467)
Sockets benachrichtigen nun darüber, dass epoll read beim Herunterfahren verfügbar ist (GH #271)
lxrun/uninstall arbeitet besser beim Löschen der Dateien und Ordner.
Korrektur für ps-f (GH #246)
Verbesserte Unterstützung für X11-Apps, z.B. xEmacs (GH #481)
Aktualisierte anfängliche Threadstapelgröße, um der standardmäßigen Ubuntu-Einstellung zu entsprechen und die Größe ordnungsgemäß an den get_rlimit-Systemaufruf zu melden (GH #172, #258)
Verbesserte Berichterstellung von Pico-Prozessimagenamen (z.B. für die Überwachung)
Implementierung von /proc/mountinfo für df-Befehl
Korrektur des Fehlercodes der symbolischen Verknüpfung für den untergeordneten Namen . und .
Weitere optimierende Fehlerbehebungen und Verbesserungen
Unterstützung von Systemaufrufen
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
Allgemeine Windows-Informationen zu Build 14352 finden Sie im Windows-Blog.
Fest
Korrektur eines Problems, bei dem große Dateien nicht ordnungsgemäß heruntergeladen bzw. ordnungsgemäß erstellt wurden. Dadurch sollte die Blockierung von npm und anderen Szenarien aufgehoben werden (GH #3, GH #313)
Entfernen einiger Instanzen, in denen Sockets nicht mehr reagieren
Korrektur einiger ptrace-Fehler
Korrektur eines Problems, bei dem WSL Dateinamen mit mehr als 255 Zeichen zuließ
Hinzufügen aktueller Windows-Zeitzonendaten und Festlegen als Standard
Eindeutige Geräte-IDs für jeden Einbindungspunkt (jre-Korrektur – GH #49)
Korrektur eines Problems mit Pfaden, die „.“ und „..“ enthalten
Hinzufügen von FIFO-Unterstützung (GH #71)
Aktualisiertes Format von „resolv.conf“ entsprechend dem nativen Ubuntu-Format
procfs-Bereinigung
Aktivierten von Ping für Administratorkonsolen (GH #18)
Unterstützung von Systemaufrufen
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
FALLOCATE EXECVE LGETXATTR FGETXATTR
Build 14342
Allgemeine Windows-Informationen zu Build 14342 finden Sie im Windows-Blog.
Informationen zu VolFs und DriveFs finden Sie im WSL-Blog.
Fest
Korrektur eines Installationsproblems, wenn der Windows-Benutzer Unicode-Zeichen im Benutzernamen enthielt
Die Problemumgehung „apt-get update udev“ in den FAQ wird jetzt standardmäßig bei der ersten Ausführung bereitgestellt
Aktivierte symbolische Verknüpfungen in DriveFs-Verzeichnissen (/mnt/<drive>)
Symbolische Verknüpfungen funktionieren nun zwischen DriveFs und VolFs
Korrektur des Pfadanalyseproblems auf oberster Ebene: ls .// funktioniert jetzt wie erwartet
npm install auf DriveFs und die -g-Optionen funktionieren jetzt
Korrektur eines Problems, das den Start des PHP-Servers verhinderte
Aktualisierte Standardumgebungswerte, z.B. $PATH, um nativem Ubuntu besser zu entsprechen
Hinzufügen eines wöchentlichen Wartungstasks in Windows zum Aktualisieren des apt-Paketcaches
Korrektur eines Problems bei der Überprüfung von ELF-Headern, WSL unterstützt jetzt alle Melkor-Optionen
Zsh-Shell ist funktionsfähig
Vorkompilierte Go-Binärdateien werden jetzt unterstützt
Eingabeaufforderung bei der ersten Ausführung von „bash.exe“ ist nun richtig lokalisiert
/proc/meminfo gibt jetzt richtige Informationen zurück
Sockets werden jetzt in VFS unterstützt
/dev jetzt als tempfs eingebunden
Fifo wird jetzt unterstützt
Mehrkernsysteme werden nun ordnungsgemäß in /proc/cpuinfo angezeigt
Weitere Verbesserungen und Fehlermeldungen, die während der ersten Ausführung heruntergeladen werden
Systemaufrufverbesserungen und -fehlerbehebungen. Unterstützte Systemaufrufliste unten.
Weitere Fehlerbehebungen und Verbesserungen
Bekannte Probleme
„.“ wird in einigen Fällen nicht ordnungsgemäß auf DriveFs aufgelöst
Unterstützung von Systemaufrufen
Im folgenden finden Sie eine Liste der neuen oder verbesserten Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
Allgemeine Windows-Informationen zu Build 14332 finden Sie im Windows-Blog.
Fest
Bessere resolv.conf-Generierung einschließlich Priorisieren von DNS-Einträgen
Problem beim Verschieben von Dateien und Verzeichnissen zwischen/mnt- und Nicht-/mnt-Laufwerken
TAR-Dateien können jetzt mit symbolischen Verknüpfungen erstellt werden.
Hinzufügen des /run/lock-Standardverzeichnisses bei der Instanzerstellung
Aktualisieren von /dev/null, um die richtigen Statusinformationen zurückzugeben
Weitere Fehler beim Herunterladen während der ersten Ausführung
Systemaufrufverbesserungen und -fehlerbehebungen. Unterstützte Systemaufrufliste unten.
Weitere optimierende Fehlerbehebungen und Verbesserungen
Unterstützung von Systemaufrufen
Im folgenden finden Sie den neuen Systemaufruf, der in WSL implementiert ist. Der Systemaufruf in dieser Liste wird in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
READLINKAT
Build 14328
Allgemeine Windows-Informationen zu Build 14332 finden Sie im Windows-Blog.
Neue Funktionen
Jetzt werden Linux-Benutzer unterstützt. Bei der Installation von Bash unter Ubuntu unter Windows werden Sie aufgefordert, einen Linux-Benutzer zu erstellen. Weitere Informationen finden Sie unter https://aka.ms/wslusers.
Der Hostname ist jetzt auf den Windows-Computernamen festgelegt, nicht mehr auf @localhost
Verbesserungen von symbolischen Verknüpfungen für Nicht-/mnt/<drive>-Dateien
Die npm-Installation funktioniert jetzt
jdk/jre kann nun mithilfe der Anweisungen installiert werden, die Sie hier finden.
Bekanntes Problem: Symbolische Verknüpfungen funktionieren für Windows-Einbindungen nicht. Diese Funktionen werden in einem späteren Build verfügbar sein.
top und htop werden jetzt angezeigt
Zusätzliche Fehlermeldungen bei einigen Installationsfehlern
Systemaufrufverbesserungen und -fehlerbehebungen. Unterstützte Systemaufrufliste unten.
Weitere optimierende Fehlerbehebungen und Verbesserungen
Unterstützung von Systemaufrufen
Im folgenden finden Sie eine Liste der Systemaufrufe, die einige Implementierungen in WSL aufweisen. Die Systemaufrufe in dieser Liste werden in mindestens einem Szenario unterstützt, aber möglicherweise werden zurzeit nicht alle Parameter unterstützt.
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.
Feedback zu Windows Subsystem for Linux
Windows Subsystem for Linux ist ein Open Source-Projekt. Wählen Sie einen Link aus, um Feedback zu geben:
In diesem Modul erfahren Sie, wie Sie das Windows-Subsystem für Linux (WSL) mit Visual Studio Code (VS Code) verwenden. Wir untersuchen den Installationsprozess und die Grundlagen der Verwendung von WSL. Darüber hinaus installieren und verwenden wir die WSL-Erweiterung von Visual Studio Code. Schließlich zeigen wir, wie Sie Python-Code in VS Code in unserer WSL-Umgebung debuggen und ausgeführen.