Partager via


Notes de publication pour le sous-système Windows pour Linux

Build 21364

Pour obtenir des informations Windows générales sur la build 21364, visitez le blog Windows.

  • Les applications GUI sont désormais disponibles ! Pour plus d’informations, consultez ce billet de blog.
  • Résolvez l’erreur lors de l’accès aux fichiers via \\wsl.localhost\.
  • Corrigez le blocage potentiel dans le service LxssManager.

Build 21354

Pour obtenir des informations Windows générales sur la build 21354, visitez le blog Windows.

  • Basculez le préfixe \wsl sur \wsl.localhost pour éviter les problèmes lorsqu’il existe un ordinateur sur le réseau nommé « wsl ». \wsl$ continuera de fonctionner.
  • Activer l’icône d’accès rapide Linux pour les processus wow.
  • Problème de mise à jour où la version 2 était toujours transmise via wslapi RegisterDistribution.
  • Remplacez le masque fmask du répertoire /usr/lib/wsl/lib par 222 afin que les fichiers soient marqués comme exécutables [GH 3847]
  • Corrigez le blocage du service wsl si la plateforme de machines virtuelles n’est pas activée.

Build 21286

Pour obtenir des informations Windows générales sur la build 21286, visitez le blog Windows.

  • Introduisez wsl.exe commande --cd pour définir le répertoire de travail actuel d’une commande.
  • Améliorez le mappage des codes d’erreur NTSTATUS à Linux. [GH 6063]
  • Amélioration des rapports d’erreur de wsl.exe --mount.
  • Ajout d’une option à /etc/wsl.conf pour activer les commandes de démarrage :
[boot]
command=<string>

Build 20226

Pour obtenir des informations Windows générales sur la build 20226, visitez le blog Windows.

  • Correction d’un blocage dans le service LxssManager. [GH 5902]

Build 20211

Pour obtenir des informations Windows générales sur la build 20211, visitez le blog Windows.

  • Introduisez wsl.exe --mount pour le montage de disques physiques ou virtuels. Pour plus d’informations, consultez Accéder aux systèmes de fichiers Linux dans Windows et WSL 2.
  • Corrigez le blocage dans le service LxssManager lors de la vérification de l’inactivité de la machine virtuelle. [GH 5768]
  • Prise en charge des fichiers VHD compressés. [GH 4103]
  • Vérifiez que les bibliothèques en mode utilisateur Linux installées sur c :\windows\system32\lxss\lib sont conservées au cours de la mise à niveau du système d’exploitation. [GH 5848]
  • Ajout de la possibilité de répertorier les distributions disponibles qui peuvent être installées avec wsl --install --list-distributions.
  • Les instances WSL sont maintenant arrêtées lorsque l’utilisateur se déconnecte.

Build 20190

Pour obtenir des informations Windows générales sur la build 20190, visitez le blog Windows.

  • Correction d’un bogue empêchant le lancement des instances WSL1. [GH 5633]
  • Correction du blocage lors de la redirection de la sortie du processus Windows. [GH 5648]
  • Ajoutez %userprofile%option \.wslconfig pour contrôler le délai d’inactivité de la machine virtuelle (wsl2.vmIdleTimeout=<time_in_ms>).
  • Prise en charge du lancement des alias d’exécution d’application à partir de WSL.
  • Ajout de la prise en charge de l’installation du noyau WSL2 et des distributions sur wsl.exe --install.

Version 20175

Pour obtenir des informations Windows générales sur la build 20175, visitez le blog Windows.

  • Ajustez l’affectation de mémoire par défaut de la machine virtuelle WSL2 à 50% de mémoire hôte ou 8 Go, selon ce qui est inférieur à [GH 4166].
  • Remplacez le préfixe \\wsl$ par \\wsl pour prendre en charge l’analyse d’URI. L’ancien chemin \\wsl$ est toujours pris en charge.
  • Activez la virtualisation imbriquée pour WSL2 par défaut sur amd64. Vous pouvez le désactiver via %userprofile%\.wslconfig ([wsl2] nestedVirtualization=false).
  • Activation de la demande wsl.exe --update pour démarrer Microsoft Update.
  • Prise en charge du renommage d’un fichier en lecture seule dans DrvFs.
  • Vérifiez que les messages d’erreur sont toujours imprimés dans la page de codes correcte.

Version 20150

Pour obtenir des informations Windows générales sur la build 20150, visitez le blog Windows.

  • Pour plus d’informations sur le GPU compute dans WSL2, consultez le blog Windows.
  • Introduire wsl.exe comme une option de la ligne de commande --install pour configurer facilement WSL.
  • Ajoutez la commande en ligne wsl.exe --update pour gérer les mises à jour du noyau WSL2.
  • Définissez WSL2 comme valeur par défaut.
  • Augmentation du délai d’arrêt normal de la machine virtuelle WSL2.
  • Correction de la condition de concurrence critique virtio-9p lors du mappage de la mémoire de l’appareil.
  • N’exécutez pas de serveur 9p avec élévation de privilèges si l’UAC est désactivée.

Build 19640

Pour obtenir des informations Windows générales sur la build 19640, visitez le blog Windows.

  • [WSL2] Améliorations de stabilité pour virtio-9p (drvfs).

Build 19555

Pour obtenir des informations Windows générales sur la build 19555, visitez le blog Windows.

  • [WSL2] Utiliser un groupe de mémoire pour limiter la quantité de mémoire utilisée par les opérations d’installation et de conversion [GH 4669]
  • Rendez wsl.exe présent lorsque le composant facultatif du sous-système Windows pour Linux n’est pas activé pour améliorer la détectabilité des fonctionnalités.
  • Modifiez wsl.exe pour imprimer le texte d’aide si le composant facultatif WSL n’est pas installé
  • Correction de la condition de concurrence lors de la création d’instances
  • Créer wslclient.dll qui contient toutes les fonctionnalités de ligne de commande
  • Empêcher le crash pendant l'arrêt du service LxssManagerUser
  • Correction de l’échec rapide de wslapi.dll quand le paramètre distroName est NULL

Construire 19041

Pour obtenir des informations Windows générales sur la build 19041, visitez le blog Windows.

  • [WSL2] Effacer le masque de signal avant de lancer les processus
  • [WSL2] Mettre à jour le noyau Linux vers la version 4.19.84
  • Gestion de la création d’un lien symbolique /etc/resolv.conf quand le lien symbolique n’est pas relatif

Build 19028

Pour obtenir des informations Windows générales sur la build 19028, visitez le blog Windows.

  • [WSL2] Mettre à jour le noyau Linux vers la version 4.19.81
  • [WSL2] Remplacez l’autorisation par défaut de /dev/net/tun par 0666 [GH 4629]
  • [WSL2] Ajuster la quantité de mémoire par défaut affectée à la machine virtuelle Linux pour qu’elle soit de 80% de mémoire hôte
  • [WSL2] Correction du serveur Interop pour gérer les demandes avec un délai d’attente de sorte à empêcher les appelants incorrects de bloquer le serveur

Build 19018

Pour obtenir des informations Windows générales sur la build 19018, visitez le blog Windows.

  • [WSL2] Utiliser cache=mmap par défaut pour les montages 9p afin de corriger les applications .NET
  • [WSL2] Corrections pour le relais localhost [GH 4340]
  • [WSL2] Introduction d’un montage tmpfs partagé multidistribution pour le partage de l’état entre plusieurs distributions
  • Correction de la restauration d’un lecteur réseau persistant pour \\wsl$

Build 19013

Pour obtenir des informations Windows générales sur la build 19013, visitez le blog Windows.

  • [WSL2] Améliorez les performances de mémoire de la machine virtuelle utilitaire WSL. La mémoire qui n’est plus utilisée sera rétrocédée à l’hôte.
  • [WSL2] Mettez à jour la version du noyau vers la version 4.19.79. (ajout de CONFIG_HIGH_RES_TIMERS, CONFIG_TASK_XACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_SCHED_HRTICK et CONFIG_BRIDGE_VLAN_FILTERING).
  • [WSL2] Correction du relais d’entrée pour gérer les cas où stdin est un handle de canal qui n’est pas fermé [GH 4424]
  • Vérification que \\wsl$ n’est pas sensible à la casse.
[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).

Version 19002

Pour obtenir des informations Windows générales sur la build 19002, visitez le blog Windows.

  • [WSL] Résolution du problème lié à la gestion de certains caractères Unicode : https://github.com/microsoft/terminal/issues/2770
  • [WSL] Corrige les cas rares où les distributions pourraient être désenregistrées si elles sont lancées immédiatement après une mise à niveau d'une version à l'autre.
  • [WSL] Correction d’un problème mineur avec wsl. exe --shutdown à cause duquel les minuteurs inactifs d’instance n’étaient pas annulés.

Version 18995

Pour obtenir des informations Windows générales sur la build 18995, visitez le blog Windows.

  • [WSL2] Résolution d’un problème où les montages DrvFs ont cessé de fonctionner après interruption d'opération (par exemple, ctrl-c) [GH 4377]
  • [WSL2] Correction de la gestion des messages hvsocket très volumineux [GH 4105]
  • [WSL2] Résoudre le problème d’interopérabilité lorsque stdin est un fichier [GH 4475]
  • [WSL2] Correction du plantage du service lors d’un état inattendu du réseau [GH 4474]
  • [WSL2] Interroger le nom de distribution à partir du serveur d’interopérabilité si le processus actuel n’a pas la variable d’environnement
  • [WSL2] Résoudre le problème d'interopérabilité lorsque stdin est un fichier
  • [WSL2] Mettre à jour la version du noyau Linux vers la version 4.19.72
  • [WSL2] Ajouter la possibilité de spécifier des paramètres de ligne de commande de noyau supplémentaires via .wslconfig
[wsl2]
kernelCommandLine = <string> # Additional kernel command line arguments

Build 18990

Pour obtenir des informations Windows générales sur la build 18990, visitez le blog Windows.

  • Améliorer les performances des listes d’annuaires dans \\wsl$
  • [WSL2] Injecter une entropie de démarrage supplémentaire [GH 4416]
  • [WSL2] Correctif pour Windows Interop lors de l’utilisation de su / sudo [GH 4465]

Build 18980

Pour obtenir des informations Windows générales sur la build 18980, visitez le blog Windows.

  • Correction de la lecture des liens symboliques qui refusent FILE_READ_DATA. Cela inclut toutes les liaisons symboliques créées par Windows pour une compatibilité descendante telle que « C :\Document et Paramètres » et un ensemble de liens symboliques dans le répertoire de profil utilisateur
  • Rendre l’état du système de fichiers inattendu non fatal [GH 4334, 4305]
  • [WSL2] Ajouter la prise en charge d’arm64 si votre processeur/microprogramme prend en charge la virtualisation
  • [WSL2] Autorisation des utilisateurs non privilégiés à afficher le journal du noyau
  • [WSL2] Corriger le relais de sortie lorsque les sockets stdout / stderr ont été fermés [GH 4375]
  • [WSL2] Prise en charge du transfert de batterie et d’adaptateur secteur
  • [WSL2] Mettre à jour le noyau Linux vers la version 4.19.67
  • Ajoutez la possibilité de définir le nom d’utilisateur par défaut dans /etc/wsl.conf :
[user]
default=<string>

Version 18975

Pour obtenir des informations Windows générales sur la build 18975, visitez le blog Windows.

  • [WSL2] Correction d’un certain nombre de problèmes de fiabilité de localhost [GH 4340]

Version 18970

Pour obtenir des informations Windows générales sur la build 18970, visitez le blog Windows.

  • [WSL2] Temps de synchronisation avec heure de l’hôte lorsque le système reprend de l’état de veille [GH 4245]
  • [WSL2] Création de liens symboliques NT sur les volumes Windows quand cela est possible.
  • [WSL2] Création de distributions dans les espaces de noms UTS, IPC, PID et Mount.
  • [WSL2] Corriger le relais de port localhost lorsque le serveur est lié directement à localhost [GH 4353]
  • [WSL2] Correction de l’interopérabilité lorsque la sortie est redirigée [GH 4337]
  • [WSL2] Prise en charge de la traduction des liens symboliques NT absolus.
  • [WSL2] Mettre à jour le noyau vers la version 4.19.59
  • [WSL2] Définissez correctement le masque de sous-réseau pour eth0.
  • [WSL2] Changement de logique pour quitter la boucle de travail de la console lorsque l’événement de sortie est signalé.
  • [WSL2] Éjection du disque dur virtuel de distribution lorsque la distribution n’est pas en cours d’exécution.
  • [WSL2] Corrigez la bibliothèque d’analyse de configuration pour gérer correctement les valeurs vides.
  • [WSL2] Prise en charge de Docker Desktop en créant des montages entre les distributions. Une distribution peut accepter ce comportement en ajoutant la ligne suivante au fichier /etc/wsl.conf :
[automount]
crossDistro = true

Version 18945

Pour obtenir des informations Windows générales sur la build 18945, visitez le blog Windows.

WSL

  • [WSL2] Autorisation des sockets tcp d’écoute dans WSL2 pour qu’ils soient accessibles à partir de l’hôte en utilisant localhost:port
  • [WSL2] Correctifs pour les échecs d'installation et de conversion, ainsi que des diagnostics supplémentaires pour identifier les problèmes futurs [GH 4105]
  • [WSL2] Améliorer le diagnostic des problèmes réseau WSL2
  • [WSL2] Mettre à jour la version du noyau vers la version 4.19.55
  • [WSL2] Mettre à jour le noyau avec les options de configuration requises pour Docker [GH 4165]
  • [WSL2] Augmenter le nombre de processeurs attribués à la machine virtuelle utilitaire légère de la même façon que l’hôte (précédemment limité à 8 par CONFIG_NR_CPUS dans la configuration du noyau) [GH 4137]
  • [WSL2] Créer un fichier d’échange pour la machine virtuelle légère WSL2
  • [WSL2] Autorisation de la visibilité des montages utilisateur par le biais de \\wsl$\distro (par exemple, sshfs) [GH 4172]
  • [WSL2] Améliorer les performances du système de fichiers 9p
  • [WSL2] Vérification que la liste ACL du disque dur virtuel n’augmente pas sans aucune limite [GH 4126]
  • [WSL2] Mettre à jour la configuration du noyau pour prendre en charge squashfs et xt_conntrack [GH 4107, 4123]
  • [WSL2] Correctif pour interop.enabled /etc/wsl.conf option [GH 4140]
  • [WSL2] Renvoi de ENOTSUP si le système de fichiers ne prend pas en charge les EA
  • [WSL2] Corriger le blocage de CopyFile avec \\wsl$
  • Basculez par défaut umask vers 0022 et ajoutez le paramètre filesystem.umask à /etc/wsl.conf
  • Correction de wslpath pour résoudre correctement les liens symboliques (retour en arrière dans 19h1) [GH 4078]
  • Introduction du fichier %UserProfile%\.wslconfig pour modifier légèrement les paramètres WSL2
[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

Pour obtenir des informations Windows générales sur la build 18917, visitez le blog Windows.

WSL

  • WSL 2 est maintenant disponible ! Pour plus d’informations, consultez blog.
  • Correction d’une régression où le lancement des processus Windows via symlinks ne fonctionnait pas correctement [GH 3999]
  • Ajoutez wsl.exe --list --verbose, wsl.exe --list --quiet et wsl.exe --import --version options à wsl.exe
  • Ajout de l’option wsl.exe --shutdown
  • Plan 9 : Autorisation de l’ouverture d’un répertoire pour que l’écriture aboutisse

Build 18890

Pour obtenir des informations Windows générales sur la build 18890, visitez le blog Windows.

WSL

  • Fuite de socket non bloquante [GH 2913]
  • L’entrée EOF au terminal peut bloquer les lectures suivantes [GH 3421]
  • Mettre à jour l’en-tête resolv.conf pour faire référence à wsl.conf [abordé dans GH 3928]
  • Blocage dans le code de suppression epoll [GH 3922]
  • Gérer les espaces dans les arguments pour --import et –export [GH 3932]
  • L’extension des fichiers mmap’d ne fonctionne pas correctement [GH 3939]
  • Résolution du problème lié à l’accès ARM64 \\wsl$ qui ne fonctionne pas correctement
  • Ajouter une meilleure icône par défaut pour wsl.exe

Build 18342

Pour obtenir des informations Windows générales sur la build 18342, visitez le blog Windows.

WSL

  • Nous avons ajouté la possibilité pour les utilisateurs d’accéder aux fichiers Linux dans une distribution WSL à partir de Windows. Ces fichiers sont accessibles via la ligne de commande, ainsi que les applications Windows, telles que l’Explorateur de fichiers, VSCode, etc. peuvent interagir avec ces fichiers. Accédez à vos fichiers en accédant à \\wsl$\<distro_name>, ou consultez une liste de distributions en cours d’exécution en accédant à \\wsl$
  • Ajouter des balises d'informations CPU supplémentaires et corriger les valeurs de Cpus_allowed[_list] [GH 2234]
  • Prise en charge de l’exécution à partir d’un thread non-leader [GH 3800]
  • Traiter les échecs de mise à jour de configuration comme non critiques [GH 3785]
  • Mettre à jour binfmt pour gérer correctement les décalages [GH 3768]
  • Activation du mappage des lecteurs réseau pour le plan 9 [GH 3854]
  • Prise en charge de la traduction de chemins Windows > Linux et Linux -> Windows pour les montages de liaison
  • Créer des sections en lecture seule pour les mappages sur les fichiers ouverts en lecture seule

Build 18334

Pour obtenir des informations Windows générales sur la build 18334, visitez le blog Windows.

WSL

  • Reconcevoir la façon dont le fuseau horaire Windows est mappé à un fuseau horaire Linux [GH 3747]
  • Corriger les fuites de mémoire et ajouter de nouvelles fonctions de traduction de chaîne [GH 3746]
  • SIGCONT sur un groupe de threads sans aucun thread est un no-op [GH 3741]
  • Afficher correctement les descripteurs de fichiers socket et epoll dans /proc/self/fd

Build 18305

Pour obtenir des informations Windows générales sur la build 18305, visitez le blog Windows.

WSL

  • les pthreads perdent l’accès aux fichiers lorsque le thread principal quitte [GH 3589]
  • TIOCSCTTY doit ignorer le paramètre « force », sauf s’il est requis [GH 3652]
  • Améliorations de la ligne de commande wsl.exe et ajout de fonctionnalités d’importation/exportation.
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.

Version 18277

Pour obtenir des informations Windows générales sur la build 18277, visitez le blog Windows.

WSL

  • Correction de l’erreur « Interface non prise en charge » introduite dans la build 18272 [GH 3645]
  • Ignorance de l’indicateur MNT_FORCE pour umount syscall [GH 3605]
  • Basculement d’interop WSL pour utiliser l’API CreatePseudoConsole officielle
  • Ne conserver aucune valeur de délai d'expiration lorsque FUTEX_WAIT redémarre

Build 18272

Pour obtenir des informations Windows générales sur la build 18272, visitez le blog Windows.

WSL

  • AVERTISSEMENT : Il existe un problème dans cette build qui rend WSL inopérable. Lorsque vous essayez de lancer votre distribution, vous verrez une erreur « Aucune interface de ce type n’est prise en charge ». Le problème a été résolu et sera dans la build Insider Fast de la semaine prochaine. Si vous avez installé cette build, vous pouvez revenir à la version précédente de Windows à l’aide de « Revenir à la version précédente de Windows 10 » dans Paramètres ->Mettre à jour & Sécurité - Récupération>.

Build 18267

Pour obtenir des informations Windows générales sur la build 18267, visitez le blog Windows.

WSL

  • Correction du problème à cause duquel le processus zombie n’est pas recueilli et reste indéfiniment.
  • WslRegisterDistribution se bloque si le message d’erreur dépasse la longueur maximale [GH 3592]
  • Autorisation de fsync à fonctionner correctement pour les fichiers en lecture seule sur DrvFs [GH 3556]
  • Vérifiez que les répertoires /bin et /sbin existent avant de créer des liens symboliques dans [GH 3584]
  • Ajout d’un mécanisme de délai d’expiration avant l’arrêt d’une instance pour les instances WSL. Le délai d’expiration est actuellement défini sur 15 secondes, ce qui signifie que l’instance se termine 15 secondes après la fin du dernier processus WSL. Pour mettre fin immédiatement à une distribution, utilisez :
wslconfig.exe /terminate <DistributionName>

Build 17763 (1809)

Pour obtenir des informations Windows générales sur la build 17763, visitez le blog Windows.

WSL

  • Vérification des autorisations de Setpriority syscall trop stricte pour modifier la priorité du même thread [GH 1838]
  • Assurez-vous que l’heure d’interruption non biaisée est utilisée pour le temps de démarrage afin d’éviter de retourner des valeurs négatives pour clock_gettime(CLOCK_BOOTTIME) [GH 3434]
  • Gestion des liens symboliques dans l’interpréteur binfmt WSL [GH 3424]
  • Meilleure gestion du nettoyage du descripteur de fichier leader de threadgroup.
  • Basculement de WSL pour utiliser KeQueryInterruptTimePrecise au lieu de KeQueryPerformanceCounter pour éviter tout dépassement de capacité [GH 3252]
  • Attachement ptrace à l’origine d’une valeur de retour incorrecte de la part des appels système [GH 1731]
  • Résoudre plusieurs problèmes liés AF_UNIX [GH 3371]
  • Résolution du problème qui pourrait entraîner l’échec de l’interopérabilité WSL si le répertoire de travail actuel est inférieur à 5 caractères [GH 3379]
  • Évitement des connexions de boucle d’échec d’un délai d’une seconde à des ports inexistants [GH 3286]
  • Ajouter le fichier stub /proc/sys/fs/file-max [GH 2893]
  • Informations d’étendue IPV6 plus précises.
  • Prise en charge de PR_SET_PTRACER [GH 3053]
  • Système de fichiers de canal effaçant par inadvertance l’événement epoll déclenché latéralement [GH 3276]
  • L’exécutable Win32 lancé par le biais d’un lien symbolique NTFS ne respecte pas le nom du lien symbolique [GH 2909]
  • Prise en charge améliorée des zombies [GH 1353]
  • Ajouter des entrées wsl.conf pour contrôler le comportement d’interopérabilité Windows [GH 1493]
      [interop]
    
      enabled=false # enable launch of Windows binaries; default is true
    
      appendWindowsPath=false # append Windows path to $PATH variable; default is true
    
  • Correctif pour getsockname ne retournant pas toujours le type de famille de sockets UNIX [GH 1774]
  • Ajout de la prise en charge de TIOCSTI [GH 1863]
  • Les sockets non bloquants lors de la connexion doivent retourner EAGAIN pour les tentatives d’écriture [GH 2846]
  • Prise en charge d’interop sur les disques durs virtuels montés [GH 3246, 3291]
  • Résoudre le problème de vérification des autorisations sur le dossier racine [GH 3304]
  • Prise en charge limitée des commandes IOCTL de clavier TTY KDGKBTYPE, KDGKBMODE et KDSKBMODE.
  • Les applications d’interface utilisateur Windows doivent s’exécuter même lorsqu’elles sont lancées en arrière-plan.
  • Ajouter une option wsl -u ou --user [GH 1203]
  • Résoudre les problèmes de lancement WSL lorsque le démarrage rapide est activé [GH 2576]
  • Les sockets Unix doivent conserver les informations d’identification d’un pair déconnecté [GH 3183]
  • Échec perpétuel des sockets Unix non bloquants avec EAGAIN [GH 3191]
  • case=off est le nouveau type de montage drvfs par défaut [GH 2937, 3212, 3328]
    • Pour plus d’informations, consultez blog.
  • Ajoutez wslconfig /terminate pour arrêter l’exécution des distributions.
  • Résolution du problème lié aux entrées du menu contextuel de l’interpréteur de commandes WSL qui ne gèrent pas correctement les chemins d’accès avec des espaces.
  • Exposition du respect de la casse par répertoire en tant qu’attribut étendu
  • ARM64 : Émuler les opérations de maintenance du cache. Résolution du problème dotnet.
  • DrvFs : uniquement les caractères de non-échappement de la plage privée qui correspondent à un caractère d’échappement.
  • Correction de l’erreur « off-by-one » dans la validation de la longueur de l’interpréteur de l’analyseur ELF [GH 3154]
  • Les minuteurs absolus WSL avec une heure passée ne se déclenchent pas [GH 3091]
  • Vérification que les points de nouvelle analyse récemment créés sont listés comme tels dans le répertoire parent.
  • Création atomique de répertoires sensibles à la casse dans DrvFs.
  • Correction d'un autre problème où les opérations multithreadées pouvaient retourner ENOENT même si le fichier existait. [GH 2712]
  • Correction de l’échec de lancement de WSL quand UMCI est activé. [GH 3020]
  • Ajouter un menu contextuel de l’Explorateur pour lancer WSL [GH 437, 603, 1836]. Pour l’utiliser, maintenez la touche Maj enfoncée et cliquez avec le bouton droit dans une fenêtre de l’Explorateur.
  • Corriger le comportement non bloquant du socket Unix [GH 2822, 3100]
  • Correction de la commande NetLink bloquée comme indiqué dans GH 2026.
  • Ajout de la prise en charge des indicateurs de propagation de montage [GH 2911].
  • Correction du problème lié à la troncation qui n’engendre pas d’événements inotify [GH 2978].
  • Ajoutez l’option --exec pour wsl.exe pour appeler un seul binaire sans interpréteur de commandes.
  • Ajoutez l’option --distribution pour wsl.exe pour sélectionner une distribution spécifique.
  • Prise en charge limitée de dmesg. Les applications peuvent désormais se connecter à dmesg. Le pilote WSL journalise des informations limitées sur dmesg. À l’avenir, cela peut être étendu pour transporter d’autres informations/diagnostics du conducteur.
    • Remarque : dmesg est actuellement pris en charge via l’interface de l’appareil /dev/kmsg. L’interface syscall syslog n’est pas encore prise en charge. Ainsi, certaines options de ligne de commande dmesg telles que -S, -C ne fonctionnent pas.
  • Modifier le gid et le mode par défaut des appareils série pour qu’ils correspondent aux paramètres natifs [GH 3042]
  • DrvFs prend désormais en charge les attributs étendus.
    • Remarque : DrvFs présente certaines limitations sur le nom des attributs étendus. Certains caractères (comme « / », « : » et « * ») ne sont pas autorisés et les noms d’attributs étendus ne sont pas sensibles à la casse sur DrvFs

Build 18252 (Ignorer l’avance)

Pour obtenir des informations Windows générales sur la build 18252, visitez le blog Windows.

WSL

  • Déplacer des fichiers binaires init et bsdtar hors de la dll lxssmanager et dans un dossier d’outils distinct
  • Correction de la concurrence autour du descripteur de fichier de fermeture lors de l’utilisation de CLONE_FILES
  • Gérer les champs facultatifs dans /proc/pid/mountinfo lors de la traduction de chemins DrvFs
  • Autorisation de la réussite de DrvFs mknod sans prise en charge des métadonnées de S_IFREG
  • Les fichiers en lecture seule créés sur DrvFs doivent avoir l'attribut "lecture seule" [GH 3411]
  • Ajouter /sbin/mount.drvfs helper pour gérer le montage DrvFs
  • Utilisation du renommage POSIX dans DrvFs.
  • Autorisation de la traduction de chemins sur les volumes sans GUID de volume.

Build 17738 (Rapide)

Pour obtenir des informations générales sur Windows de la build 17738, visitez le Blog Windows.

WSL

  • Vérification des autorisations de Setpriority syscall trop stricte pour modifier la priorité du même thread [GH 1838]
  • Assurez-vous que l’heure d’interruption non biaisée est utilisée pour le temps de démarrage afin d’éviter de retourner des valeurs négatives pour clock_gettime(CLOCK_BOOTTIME) [GH 3434]
  • Gestion des liens symboliques dans l’interpréteur binfmt WSL [GH 3424]
  • Meilleure gestion du nettoyage du descripteur de fichier leader de threadgroup.

Build 17728 (Rapide)

Pour obtenir des informations générales sur Windows concernant la build 17728, visitez le Blog Windows.

WSL

  • Basculement de WSL pour utiliser KeQueryInterruptTimePrecise au lieu de KeQueryPerformanceCounter pour éviter tout dépassement de capacité [GH 3252]
  • Attachement ptrace à l’origine d’une valeur de retour incorrecte de la part des appels système [GH 1731]
  • Correction d’un certain nombre de problèmes liés à AF_UNIX [GH 3371]
  • Résolution du problème qui pourrait entraîner l’échec de l’interopérabilité WSL si le répertoire de travail actuel est inférieur à 5 caractères [GH 3379]

Build 18204 (Avancer)

Pour obtenir des informations Windows générales sur la build 18204, visitez le blog Windows.

WSL

  • Système de fichiers de canal effaçant par inadvertance l’événement epoll déclenché latéralement [GH 3276]
  • L’exécutable Win32 lancé par le biais d’un lien symbolique NTFS ne respecte pas le nom du lien symbolique [GH 2909]

Build 17723 (rapide)

Pour obtenir des informations Windows générales sur la build 17723, visitez le blog Windows.

WSL

  • Évitement des connexions de boucle d’échec d’un délai d’une seconde à des ports inexistants [GH 3286]
  • Ajouter le fichier stub /proc/sys/fs/file-max [GH 2893]
  • Informations d’étendue IPV6 plus précises.
  • Prise en charge de PR_SET_PTRACER [GH 3053]
  • Système de fichiers de canal effaçant par inadvertance l’événement epoll déclenché latéralement [GH 3276]
  • L’exécutable Win32 lancé par le biais d’un lien symbolique NTFS ne respecte pas le nom du lien symbolique [GH 2909]

Version 17713

Pour obtenir des informations Windows générales sur la build 17713, visitez le blog Windows.

WSL

  • Prise en charge améliorée des zombies [GH 1353]
  • Ajouter des entrées wsl.conf pour contrôler le comportement d’interopérabilité Windows [GH 1493]
      [interop]
    
      enabled=false # enable launch of Windows binaries; default is true
    
      appendWindowsPath=false # append Windows path to $PATH variable; default is true
    
  • Correctif pour getsockname ne retournant pas toujours le type de famille de sockets UNIX [GH 1774]
  • Ajout de la prise en charge de TIOCSTI [GH 1863]
  • Les sockets non bloquants lors de la connexion doivent retourner EAGAIN pour les tentatives d’écriture [GH 2846]
  • Prise en charge d’interop sur les disques durs virtuels montés [GH 3246, 3291]
  • Résoudre le problème de vérification des autorisations sur le dossier racine [GH 3304]
  • Prise en charge limitée des commandes IOCTL de clavier TTY KDGKBTYPE, KDGKBMODE et KDSKBMODE.
  • Les applications d’interface utilisateur Windows doivent s’exécuter même lorsqu’elles sont lancées en arrière-plan.

Build 17704

Pour obtenir des informations Windows générales sur la build 17704, visitez le blog Windows.

WSL

  • Ajouter une option wsl -u ou --user [GH 1203]
  • Résoudre les problèmes de lancement WSL lorsque le démarrage rapide est activé [GH 2576]
  • Les sockets Unix doivent conserver les informations d’identification d’un pair déconnecté [GH 3183]
  • Échec perpétuel des sockets Unix non bloquants avec EAGAIN [GH 3191]
  • case=off est le nouveau type de montage drvfs par défaut [GH 2937, 3212, 3328]
    • Pour plus d’informations, consultez blog.
  • Ajoutez wslconfig /terminate pour arrêter l’exécution des distributions.

Build 17692

Pour obtenir des informations Windows générales sur la build 17692, visitez le blog Windows.

WSL

  • Résolution du problème lié aux entrées du menu contextuel de l’interpréteur de commandes WSL qui ne gèrent pas correctement les chemins d’accès avec des espaces.
  • Exposition du respect de la casse par répertoire en tant qu’attribut étendu
  • ARM64 : Émuler les opérations de maintenance du cache. Résolution du problème dotnet.
  • DrvFs : uniquement les caractères de non-échappement de la plage privée qui correspondent à un caractère d’échappement.

Build 17686

Pour obtenir des informations Windows générales sur la build 17686, visitez le blog Windows.

WSL

  • Correction de l’erreur « off-by-one » dans la validation de la longueur de l’interpréteur de l’analyseur ELF [GH 3154]
  • Les minuteurs absolus WSL avec une heure passée ne se déclenchent pas [GH 3091]
  • Vérification que les points de nouvelle analyse récemment créés sont listés comme tels dans le répertoire parent.
  • Création atomique de répertoires sensibles à la casse dans DrvFs.

Build 17677

Pour obtenir des informations Windows générales de la build 17677, rendez-vous sur le blog Windows .

WSL

  • Correction d'un autre problème où les opérations multithreadées pouvaient retourner ENOENT même si le fichier existait. [GH 2712]
  • Correction de l’échec de lancement de WSL quand UMCI est activé. [GH 3020]

Build 17666

Pour obtenir des informations Windows générales sur la build 17666, visitez le blog Windows.

WSL

AVERTISSEMENT : Il existe un problème empêchant WSL de s’exécuter sur certains circuits AMD [GH 3134]. Un correctif est prêt et fait son chemin vers la branche Insider Build.

  • Ajouter un menu contextuel de l’Explorateur pour lancer WSL [GH 437, 603, 1836]. Pour l’utiliser, maintenez la touche Maj enfoncée et cliquez avec le bouton droit dans une fenêtre de l’Explorateur.
  • Corriger le comportement non bloquant du socket unix [GH 2822, 3100]
  • Correction de la commande NetLink bloquée comme indiqué dans GH 2026.
  • Ajout de la prise en charge des indicateurs de propagation de montage [GH 2911].
  • Correction du problème lié à la troncation qui n’engendre pas d’événements inotify [GH 2978].
  • Ajoutez l’option --exec pour wsl.exe pour appeler un seul binaire sans interpréteur de commandes.
  • Ajoutez l’option --distribution pour wsl.exe pour sélectionner une distribution spécifique.

Build 17655 (Accès anticipé)

Pour obtenir des informations Windows générales sur la build 17655, visitez le blog Windows.

WSL

  • Prise en charge limitée de dmesg. Les applications peuvent désormais se connecter à dmesg. Le pilote WSL journalise des informations limitées sur dmesg. À l’avenir, cela peut être étendu pour transporter d’autres informations/diagnostics du conducteur.
    • Remarque : dmesg est actuellement pris en charge via l’interface de l’appareil /dev/kmsg. L’interface sycall syslog n’est pas encore prise en charge. Ainsi, certaines options de ligne de commande dmesg telles que -S, -C ne fonctionnent pas.
  • Correction d’un problème à cause duquel les opérations multithread peuvent retourner ENOENT même si le fichier existe. [GH 2712]

Build 17639 (Accès anticipé)

Pour obtenir des informations Windows générales sur la build 17639, visitez le blog Windows.

WSL

  • Modifier le gid et le mode par défaut des appareils série pour qu’ils correspondent aux paramètres natifs [GH 3042]
  • DrvFs prend désormais en charge les attributs étendus.
    • Remarque : DrvFs présente certaines limitations sur le nom des attributs étendus. En particulier, certains caractères (comme « / », « : » et « * ») ne sont pas autorisés et les noms d’attributs étendus ne sont pas sensibles à la casse sur DrvFs

Build 17133 (Rapide)

Pour obtenir des informations Windows générales sur la build 17133, visitez le blog Windows.

WSL

  • Correction du blocage dans WSL. [GH 3039, 3034]

Build 17128 (Rapide)

Pour des informations générales sur Windows concernant la build 17128, visitez le blog Windows .

WSL

  • Aucun

Build 17627 (Passer en avance)

Pour obtenir des informations Windows générales sur la build 17627, visitez le Blog Windows.

WSL

  • Ajout de la prise en charge des opérations futex pi-aware. [GH 1006]
    • Notez que les priorités ne sont pas actuellement une fonctionnalité WSL prise en charge afin qu’il existe des limitations, mais que l’utilisation standard doit être déblocée.
  • Prise en charge du pare-feu Windows pour les processus WSL. [GH 1852]
    • Par exemple, pour permettre au processus Python WSL d’écouter sur n’importe quel port, utilisez le cmd Windows avec élévation de privilèges : 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
    • Pour plus d’informations sur l’ajout de règles de pare-feu, consultez lien
  • Respectez le shell par défaut de l’utilisateur lors de l’utilisation de wsl.exe. [GH 2372]
  • Signaler toutes les interfaces réseau en tant qu’ethernet. [GH 2996]
  • Meilleure gestion du fichier /etc/passwd endommagé. [GH 3001]

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17618 (Passer à la version suivante)

Pour obtenir des informations Windows générales sur la build 17618, visitez le Blog Windows.

WSL

  • Introduire la fonctionnalité pseudoconsole pour l’interopérabilité NT [GH 988, 1366, 1433, 1542, 2370, 2406].
  • Le mécanisme d’installation hérité (lxrun.exe) a été déconseillé. Le mécanisme pris en charge pour l’installation des distributions est via le Microsoft Store.

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17110

Pour obtenir des informations Windows générales sur la build 17110, visitez le blog Windows.

WSL

  • Autoriser /init à se terminer à partir de Windows [GH 2928].
  • DrvFs utilise désormais par défaut le respect de la casse par répertoire (ce qui équivaut à l’option de montage « case=dir »).
    • L’utilisation de « case=force » (l’ancien comportement) nécessite la définition d’une clé de Registre. Exécutez la commande suivante pour activer « case=force » si vous avez besoin de l’utiliser : reg add HKLM\SYSTEM\CurrentControlSet\Services\lxss /v DrvFsAllowForceCaseSensitivity /t REG_DWORD /d 1
    • Si vous avez des répertoires existants créés avec WSL dans une version antérieure de Windows qui ont besoin d’être sensibles à la casse, utilisez fsutil.exe pour les marquer comme sensibles à la casse : fsutil.exe file setcasesensitiveinfo <path> enable
  • Chaînes d’arrêt NULL retournées par uname syscall.

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17107

Pour obtenir des informations Windows générales sur la build 17107, visitez le blog Windows.

WSL

  • Prise en charge de TCSETSF et TCSETSW sur les points de terminaison pty maîtres [GH 2552].
  • Le démarrage de processus interop simultanés peut entraîner EINVAL [GH 2813].
  • Corrigez PTRACE_ATTACH pour afficher l’état de suivi approprié dans /proc/pid/status.
  • Correction de la concurrence où les processus de courte durée clonés avec des indicateurs CLEARTID et SETTID peuvent quitter sans effacer l’adresse TID.
  • Affichez un message lors de la mise à niveau des répertoires du système de fichiers Linux lors du déplacement à partir d’une build antérieure à 17093. Pour plus d’informations sur les modifications apportées au système de fichiers 17093, consultez les notes de publication de 17093.

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17101

Pour obtenir des informations Windows générales sur la build 17101, visitez le blog Windows .

WSL

  • Prise en charge de signalfd. [GH 129]
  • Prendre en charge les noms de fichiers contenant des caractères NTFS non valides en les encodant en tant que caractères Unicode privés. [GH 1514]
  • Le montage automatique repasse en lecture seule quand l’écriture n’est pas prise en charge. [GH 2603]
  • Autoriser le collage de paires de substitution Unicode (comme les caractères emoji). [GH 2765]
  • Les pseudofichiers contenus dans /proc et /sys doivent revenir prêts pour la lecture et l’écriture à l’issue de select, poll, epoll et autres [GH 2838]
  • Résolution d'un problème qui pourrait entraîner le service dans une boucle infinie lorsque le Registre a été falsifié ou endommagé.
  • Corrigez les messages netlink pour qu’ils fonctionnent avec une version plus récente (en amont 4.14) d’iproute2.

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17093

Pour obtenir des informations Windows générales sur la build 17093, visitez le blog Windows.

Important :

Lors du démarrage de WSL pour la première fois après la mise à niveau vers cette build, il doit effectuer une mise à niveau des répertoires du système de fichiers Linux. Cela peut prendre jusqu’à plusieurs minutes, de sorte que WSL peut sembler démarrer lentement. Cela ne doit se produire qu’une seule fois pour chaque distribution que vous avez installée à partir du magasin.

  • Prise en charge améliorée du respect de la casse dans DrvFs.
    • DrvFs prend désormais en charge le respect de la casse par répertoire. Il s’agit d’un nouvel indicateur qui peut être défini sur les répertoires pour indiquer que toutes les opérations dans ces répertoires doivent être traitées comme sensibles à la casse, ce qui permet même aux applications Windows d’ouvrir correctement les fichiers qui diffèrent uniquement par la casse.
    • DrvFs dispose de nouvelles options de montage contrôlant le respect de la casse par répertoire
      • case=force : tous les répertoires sont traités comme sensibles à la casse (à l’exception de la racine du lecteur). Les nouveaux répertoires créés avec WSL sont marqués comme sensibles à la casse. Il s’agit du comportement hérité, à l’exception du marquage de nouveaux répertoires sensibles à la casse.
      • case=dir : seuls les répertoires avec l’indicateur de respect de la casse par répertoire sont traités comme sensibles à la casse ; les autres répertoires ne sont pas sensibles à la casse. Les nouveaux répertoires créés avec WSL sont marqués comme sensibles à la casse.
      • case=off : seuls les répertoires avec l’indicateur de respect de la casse par répertoire sont traités comme sensibles à la casse ; les autres répertoires ne sont pas sensibles à la casse. Les nouveaux répertoires créés avec WSL sont marqués comme insensibles à la casse.
    • Remarque : cet indicateur n’est pas défini pour les répertoires créés par WSL dans les versions précédentes. Ces répertoires ne sont donc pas traités comme sensibles à la casse si vous utilisez l’option « case=dir ». Un moyen de définir cet indicateur sur les répertoires existants sera bientôt disponible.
    • Exemple de montage avec ces options (pour les lecteurs existants, vous devez d’abord démonter avant de pouvoir monter avec différentes options) : sudo mount -t drvfs C : /mnt/c -o case=dir
    • Pour l’instant, case=force est toujours l’option par défaut. Cela sera remplacé par case=dir à l’avenir.
  • Vous pouvez maintenant utiliser des barres obliques dans les chemins Windows lors du montage de DrvFs, par exemple : sudo mount -t drvfs //server/share /mnt/share
  • WSL traite désormais le fichier /etc/fstab au démarrage de l’instance [GH 2636].
    • Cette opération est effectuée avant le montage automatique des lecteurs DrvFs ; les lecteurs déjà montés par fstab ne sont pas montés automatiquement, ce qui vous permet de modifier le point de montage pour des lecteurs spécifiques.
    • Ce comportement peut être désactivé à l’aide de wsl.conf.
  • Les fichiers mount, mountinfo et mountstats dans /proc échappent correctement les caractères spéciaux comme les barres obliques inverses et les espaces [GH 2799]
  • Les fichiers spéciaux créés avec des fichiers DrvFs tels que des liens symboliques WSL, ou des fifos et des sockets lorsque les métadonnées sont activées, peuvent maintenant être copiés et déplacés à partir de Windows.

WSL est plus configurable avec wsl.conf

Nous avons ajouté une méthode permettant de configurer automatiquement certaines fonctionnalités dans WSL qui seront appliquées chaque fois que vous lancez le sous-système. Cela inclut les options de montage automatique et la configuration réseau. En savoir plus sur ce sujet dans notre billet de blog à : https://aka.ms/wslconf

AF_UNIX autorise les connexions de socket entre les processus Linux sur WSL et les processus natifs Windows

Les applications WSL et Windows peuvent désormais communiquer entre elles via des sockets Unix. Imaginez que vous souhaitez exécuter un service dans Windows et le rendre disponible pour les applications Windows et WSL. Maintenant, c’est possible avec les sockets Unix. En savoir plus dans notre billet de blog à https://aka.ms/afunixinterop

WSL

  • Prise en charge de mmap() avec MAP_NORESERVE [GH 121, 2784]
  • Support CLONE_PTRACE et CLONE_UNTRACED [GH 121, 2781]
  • Gestion du signal de fin non-SIGCHLD dans le clone [GH 121, 2781]
  • Stub /proc/sys/fs/inotify/max_user_instances et /proc/sys/fs/inotify/max_user_watches [GH 1705]
  • Erreur lors du chargement des fichiers binaires ELF qui contiennent des en-têtes de chargement avec des décalages non nuls [GH 1884]
  • Mise à zéro des octets de page de fin lors du chargement des images.
  • Réduire les cas où execve termine silencieusement le processus

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17083

Pour obtenir des informations générales sur Windows concernant la build 17083, visitez leBlog Windows.

WSL

  • Correction de la vérification d’erreur liée à epoll [GH 2798, 2801, 2857]
  • Correction des blocages lors de la désactivation d’ASLR [GH 1185, 2870]
  • Assurance que les opérations mmap apparaissent atomiques [GH 2732]

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17074

Pour obtenir des informations générales sur Windows pour la build 17074, visitez le blog Windows .

WSL

  • Format de stockage corrigé des métadonnées DrvFs [GH 2777]
    Important : les métadonnées DrvFs créées avant cette version s’afficheront de manière incorrecte ou ne s’afficheront pas du tout. Pour corriger les fichiers affectés, utilisez chmod et chown pour réappliquer les métadonnées.
  • Correction du problème lié à de multiples signaux et syscalls redémarrables.

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Version 17063

Pour obtenir des informations Windows générales sur la build 17063, visitez le blog Windows.

WSL

  • DrvFs prend en charge des métadonnées Linux supplémentaires. Cela permet de définir le propriétaire et le mode des fichiers à l’aide de chmod/chown, ainsi que la création de fichiers spéciaux tels que fifos, sockets unix et fichiers d’appareil. Cela est désactivé par défaut pour l’instant, car il est toujours expérimental. Remarque : Nous avons résolu un bogue dans le format de métadonnées utilisé par DrvFs. Bien que les métadonnées fonctionnent sur cette build pour l’expérimentation, les futures builds ne lisent pas correctement les métadonnées créées par cette build. Vous devrez peut-être mettre à jour manuellement le propriétaire des fichiers modifiés, et les appareils avec un ID d'appareil personnalisé devront être recréés.

    Pour activer, montez DrvFs avec l’option de métadonnées (pour l’activer sur un montage existant, vous devez d’abord la démonter) :

    mount -t drvfs C: /mnt/c -o metadata
    

    Les autorisations Linux sont ajoutées en tant que métadonnées supplémentaires au fichier ; ils n’affectent pas les autorisations Windows. N’oubliez pas que la modification d’un fichier à l’aide d’un éditeur Windows peut supprimer les métadonnées. Dans ce cas, le fichier revient à ses autorisations par défaut.

  • Ajout d’options de montage à DrvFs pour contrôler les fichiers sans métadonnées.

    • uid : ID utilisateur utilisé pour le propriétaire de tous les fichiers.
    • gid : ID de groupe utilisé pour le propriétaire de tous les fichiers.
    • umask : masque octal des autorisations à exclure pour tous les fichiers et répertoires.
    • fmask : masque octal d’autorisations à exclure pour tous les fichiers standard.
    • dmask : masque octal des autorisations à exclure pour tous les répertoires.

    Par exemple:

    mount -t drvfs C: /mnt/c -o uid=1000,gid=1000,umask=22,fmask=111
    

    Combinez avec l’option de métadonnées pour spécifier les autorisations par défaut pour les fichiers sans métadonnées.

  • Introduction d’une nouvelle variable d’environnement, WSLENV, pour configurer le flux des variables d’environnement entre WSL et Win32.

    Par exemple:

    WSLENV=GOPATH/l:USERPROFILE/pu:DISPLAY
    

    WSLENV est une liste de variables d'environnement délimitée par des deux-points, qui peuvent être incluses lors du lancement de processus WSL à partir de processus Win32 ou vice versa. Chaque variable peut être suffixee avec une barre oblique suivie d’indicateurs pour spécifier la façon dont elle est traduite.

    • p : La valeur est un chemin qui doit être traduit entre les chemins WSL et les chemins Win32.
    • l : la valeur est une liste de chemins d’accès. Dans WSL, il s’agit d’une liste délimitée par des deux-points. Dans Win32, il s’agit d’une liste délimitée par des points-virgules.
    • u : La valeur ne doit être incluse que lors de l’appel de WSL à partir de Win32
    • w : La valeur ne doit être incluse que lors de l’appel de Win32 à partir de WSL

    Vous pouvez définir WSLENV dans .bashrc ou dans l’environnement Windows personnalisé pour votre utilisateur.

  • Les montages drvfs préservent correctement les horodatages de tar, cp -p (GH 1939)

  • Les liens symboliques drvfs signale la taille correcte (GH 2641)

  • La lecture/écriture fonctionne pour de très grandes tailles d’E/S (GH 2653)

  • waitpid fonctionne avec les ID de groupe de processus (GH 2534)

  • Amélioration significative des performances mmap pour les régions de réserve volumineuses ; amélioration des performances ghc (GH 1671)

  • Prise en charge de la personnalité pour READ_IMPLIES_EXEC ; correction de maxima et clisp (GH 1185)

  • Prise en charge par mprotect de PROT_GROWSDOWN ; correction de clisp (GH 1128)

  • Correction des erreurs de page en mode de survalidation ; correction de sbcl (GH 1128)

  • clone prend en charge d’autres combinaisons d’indicateurs

  • Prise en charge select/epoll de fichiers epoll (auparavant un no-op).

  • Notifier ptrace des appels système non implémentés.

  • Ignorer les interfaces qui ne sont pas à jour lors de la génération de serveurs de noms resolv.conf [GH 2694]

  • Énumérer les interfaces réseau sans adresse physique. [GH 2685]

  • Correctifs et améliorations de bogues supplémentaires.

Outils Linux disponibles pour les développeurs sur Windows

  • La chaîne d’outils de ligne de commande Windows inclut bsdtar (tar) et curl. Lisez ce blog pour en savoir plus sur l’ajout de ces deux nouveaux outils et voir comment ils façonnent l’expérience des développeurs sous Windows.

  • AF_UNIX est disponible dans le Kit de développement logiciel (SDK) Windows Insider (17061+). Lisez ce blog pour en savoir plus sur AF_UNIX et sur la façon dont les développeurs sur Windows peuvent l’utiliser.

Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17046

Pour obtenir des informations Windows générales sur la build 17046, visitez le blog Windows.

Réparé

WSL

  • Autoriser les processus à s’exécuter sans terminal actif. [GH 709, 1007, 1511, 2252, 2391, et al.]
  • Meilleure prise en charge des CLONE_VFORK et des CLONE_VM. [GH 1878, 2615]
  • Ignorance des pilotes de filtre TDI pour les opérations de mise en réseau WSL. [GH 1554]
  • DrvFs crée des liens symboliques NT lorsque certaines conditions sont remplies. [GH 353, 1475, 2602]
    • La cible de lien doit être relative, ne doit pas traverser de points de montage ou de liens symboliques et doit exister.
    • L’utilisateur doit avoir SE_CREATE_SYMBOLIC_LINK_PRIVILEGE (cela nécessite normalement de lancer wsl.exe en mode élevé), sauf si le mode développeur est activé.
    • Dans toutes les autres situations, DrvFs crée toujours des liens symboliques WSL.
  • Autorisation de l’exécution simultanée d’instances WSL avec et sans élévation de privilèges.
  • Prise en charge de /proc/sys/kernel/yama/ptrace_scope
  • Ajout de wslpath pour effectuer des conversions de chemins WSL<->Windows. [GH 522, 1243, 1834, 2327, et al.]
      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'
    

    Consoler

  • Aucun correctif.

Résultats LTP :

Test en cours.

Build 17040

Pour obtenir des informations Windows générales sur la build 17040, visitez le blog windows.

Réparé

WSL

  • Aucun correctif depuis 17035.

Consoler

  • Aucun correctif depuis 17035.

Résultats LTP :

Test en cours.

Version 17035

Pour obtenir des informations générales sur Windows concernant la build 17035, visitez le blog Windows .

Réparé

WSL

  • L’accès aux fichiers sur DrvFs peut parfois échouer avec EINVAL. [GH 2448]

Consoler

  • Perte de couleur lors de l’insertion/suppression de lignes en mode VT.

Résultats LTP :

Test en cours.

Build 17025

Pour obtenir des informations Windows générales sur la build 17025, visitez le blog Windows.

Réparé

WSL

  • Démarrez les processus initiaux dans un nouveau groupe de processus de premier plan [GH 1653, 2510].
  • Correctifs de remise SIGHUP [GH 2496].
  • Générez le nom du pont virtuel par défaut si aucun n’a été fourni [GH 2497].
  • Implémentez /proc/sys/kernel/random/boot_id [GH 2518].
  • Autres correctifs de canal stdout/stderr Interop.
  • Appel système syncfs stub.

Consoler

  • Corriger la traduction VT d’entrée pour les consoles tierces [GH 111]

Résultats LTP :

Test en cours.

Build 17017

Pour obtenir des informations Windows générales sur la build 17017, visitez le blog Windows.

Réparé

WSL

  • Ignorer les en-têtes de programme ELF vides [GH 330].
  • Autoriser LxssManager à créer des instances WSL pour les utilisateurs non interactifs (prise en charge des tâches ssh et planifiées) [GH 777, 1602].
  • Prise en charge des scénarios WSL->Win32->WSL (« introduction ») [GH 1228].
  • Prise en charge limitée de l’arrêt des applications console appelées par le biais d’Interop [GH 1614].
  • Prise en charge d’options de montage pour devpts [GH 1948].
  • Blocage du démarrage enfant par Ptrace [GH 2333].
  • Événements manquants dans EPOLLET [GH 2462].
  • Retournez plus de données pour PTRACE_GETSIGINFO.
  • Getdents avec lseek donne des résultats incorrects.
  • Correction de certains blocages d’application interop Win32, en attente d’une entrée sur un canal qui n’a plus de données.
  • Support O_ASYNC pour les fichiers tty/pty.
  • Améliorations supplémentaires et correctifs de bogues

Consoler

  • Aucune modification liée à la console dans cette version.

Résultats LTP :

Test en cours.

Fall Creators Update

Build 16288

Pour obtenir des informations Windows générales sur la build 16288, visitez le blog Windows.

Réparé

WSL

  • Initialiser et signaler correctement uid, gid et mode pour les descripteurs de fichiers de socket [GH 2490]
  • Améliorations supplémentaires et correctifs de bogues

Consoler

  • Aucune modification liée à la console dans cette version.

Résultats LTP :

Aucune modification depuis 16273

Version 16278

Pour obtenir des informations générales sur Windows à propos de la build 162738, visitez le Blog Windows .

Réparé

WSL

  • Annulation explicite du mappage des vues mappées de sections sauvegardées dans un fichier lors du déchirement de l’état LX MM [GH 2415]
  • Améliorations supplémentaires et correctifs de bogues

Consoler

  • Aucune modification liée à la console dans cette version.

Résultats LTP :

Aucune modification depuis 16273

Build 16275

Pour obtenir des informations générales sur Windows concernant la version 162735, visitez le blog Windows .

Réparé

WSL

  • Aucune modification liée à WSL dans cette version.

Consoler

  • Aucune modification liée à la console dans cette version.

Résultats LTP :

Aucune modification depuis 16273

Version 16273

Pour obtenir des informations Windows générales sur la build 16273, visitez le blog Windows.

Réparé

WSL

  • Correction d’un problème où DrvFs signalait parfois le type de fichier incorrect pour les répertoires [GH 2392]
  • Autoriser la création de sockets NETLINK_KOBJECT_UEVENT pour débloquer des programmes qui utilisent uevent [GH 1121, 2293, 2242, 2295, 2235, 648, 637]
  • Ajouter le support de la connexion non bloquante [GH 903, 1391, 1584, 1585, 1829, 2290, 2314]
  • Implémentation de l’indicateur d’appel système de clone CLONE_FS [GH 2242]
  • Corriger les problèmes liés à la gestion incorrecte des onglets ou des guillemets dans l’interopérabilité NT [GH 1625, 2164]
  • Résoudre l’erreur d’accès refusé lors de la tentative de relance des instances WSL [GH 651, 2095]
  • Implémentation des opérations futex FUTEX_REQUEUE et FUTEX_CMP_REQUEUE [GH 2242]
  • Corriger les autorisations pour différents fichiers SysFs [GH 2214]
  • Correction du blocage de l’assemblage Haskell lors de l’installation [GH 2290]
  • Implémenter des indicateurs binfmt_misc 'C' 'O' et 'P' [GH 2103]
  • Ajout de /proc/sys/kernel /shmmax /shmmni et /threads-max [GH 1753]
  • Ajout de la prise en charge partielle de l’appel système ioprio_set [GH 498]
  • Stub SO_REUSEPORT et ajout de la prise en charge de SO_PASSCRED pour les sockets netlink [GH 69]
  • Retourne différents codes d’erreur de RegisterDistribution si une distribution est actuellement installée ou désinstallée.
  • Autoriser l’annulation de l’inscription de distributions WSL partiellement installées via wslconfig.exe
  • Corriger le blocage du test de socket Python dû à udp::msg_peek
  • Améliorations supplémentaires et correctifs de bogues

Consoler

  • Aucune modification liée à la console dans cette version.

Résultats LTP :

Nombre total de tests : 1904
Total des tests ignorés : 209
Nombre total d’échecs : 229

Build 16257

Pour obtenir des informations Windows générales sur la build 16257, visitez le blog Windows.

Réparé

WSL

  • Implémentation d’un appel système prlimit64
  • Ajout de la prise en charge de ulimit -n (setrlimit RLIMIT_NOFILE) [GH 1688]
  • Stub MSG_MORE pour les sockets TCP [GH 2351]
  • Corriger le comportement de vecteur auxiliaire AT_EXECFN non valide [GH 2133]
  • Corriger le comportement de copie/coller pour la console/tty et ajouter une meilleure gestion complète des mémoires tampons [GH 2204, 2131]
  • Définir AT_SECURE dans le vecteur auxiliaire pour les programmes set-user-ID et set-group-ID [GH 2031]
  • Le point de terminaison maître du pseudo-terminal ne gère pas TIOCPGRP [GH 1063]
  • Correction d’lseek pour le rewind des répertoires dans LxFs [GH 2310]
  • /dev/ptmx verrouille après une utilisation intensive [GH 1882]
  • Améliorations supplémentaires et correctifs de bogues

Consoler

Résultats LTP :

Aucune modification depuis 16251

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

prlimit64

Problèmes connus

Problème GitHub 2392 : Dossiers Windows non reconnus par WSL ...

Dans la build 16257, WSL rencontre des problèmes lors de l’énumération des fichiers/dossiers Windows via /mnt/c/.... Ce problème a été résolu et doit être publié dans la build Insiders pendant la semaine à compter du 14/8/2017.


Build 16251

Pour obtenir des informations Windows générales sur la build 16251, visitez le blog Windows.

Réparé

WSL

  • Supprimez la balise bêta du composant facultatif WSL, voir le billet de blog pour plus d’informations.
  • Lancement correct des uid et gid définis et enregistrés pour les binaires set-user-ID et set-group-ID sur exec [GH 962, 1415, 2072]
  • Ajout de la prise en charge de ptrace PTRACE_O_TRACEEXIT [GH 555]
  • Ajout de la prise en charge de ptrace PTRACE_GETFPREGS et PTRACE_GETREGSET avec NT_FPREGSET [GH 555]
  • Correction de ptrace pour effectuer un arrêt sur les signaux ignorés
  • Améliorations supplémentaires et correctifs de bogues

Consoler

  • Aucune modification liée à la console dans cette version.

Résultats LTP :

Nombre de tests réussis : 768
nombre de tests défaillants : 244
nombre de tests ignorés : 96


Build 16241

Pour obtenir des informations Windows générales sur la build 16241, visitez le blog Windows.

Réparé

WSL

  • Aucune modification liée à WSL dans cette version.

Consoler

  • Correction de la sortie d’un caractère incorrect pour la décimale des lignes croisées, signalée ici à l’origine
  • Correctif pour l'absence d'affichage du texte de sortie dans la page de codes 65001 (utf8)
  • Ne transférez pas les modifications apportées aux valeurs RVB d’une couleur vers d’autres parties de la palette lors de la modification de sélection. La feuille de propriétés de la console sera ainsi beaucoup plus facile à utiliser.
  • Ctrl+S n’apparaît pas fonctionner correctement
  • Annuler la mise en gras/estomper totalement absent des codes d’échappement ANSI [GH 2174]
  • La console ne prend pas correctement en charge les thèmes de couleurs Vim [GH 1706]
  • Impossible de coller des caractères particuliers [GH 2149]
  • Le redimensionnement de l’ajustement dynamique interagit de façon étrange avec le redimensionnement d’une fenêtre bash quand des éléments se trouvent sur la ligne de commande/d’édition [GH ConEmu 1123]
  • Ctrl-L laisse l’écran sale [GH 1978]
  • Bogue de rendu de la console lors de l’affichage de VT sur HDPI [GH 1907]
  • Les caractères japonais semblent étranges avec le caractère Unicode U+30FB [GH 2146]
  • Améliorations supplémentaires et correctifs de bogues

Version 16237

Pour obtenir des informations Windows générales sur la build 16237, visitez le blog Windows.

Réparé

  • Utilisation d’attributs par défaut pour les fichiers sans EA dans lxfs (racine, racine, 0000)
  • Ajout de la prise en charge des distributions qui utilisent des attributs étendus
  • Correction de l'espacement des entrées retournées par getdents et getdents64
  • Correction des autorisations pour l’appel système shmctl SHM_STAT [GH 2068]
  • Correction de l’état epoll initial incorrect pour tty [GH 2231]
  • Correction de DrvFs readdir qui ne retourne pas toutes les entrées [GH 2077]
  • Correction de LxFs readdir quand des fichiers ne sont pas liés [GH 2077]
  • Autoriser la réouverture des fichiers drvfs non liés via procfs
  • Ajout d’un remplacement de clé de Registre global pour la désactivation des fonctionnalités WSL (interop/montage de lecteur)
  • Correction du nombre de blocs incorrects dans « stat » pour DrvFs (et LxFs) [GH 1894]
  • Améliorations supplémentaires et correctifs de bogues

Build 16232

Pour obtenir des informations Windows générales sur la build 16232, visitez le blog Windows.

Réparé

  • Aucune modification liée à WSL dans cette version.

Build 16226

Pour obtenir des informations Windows générales sur la build 16226, visitez le blog Windows.

Réparé

  • Prise en charge des syscalls liés à xattr (getxattr, setxattr, listxattr, removexattr).
  • Prise en charge du xattr security.capability.
  • Amélioration de la compatibilité avec certains systèmes de fichiers et filtres, y compris les serveurs SMB non MS. [GH #1952]
  • Prise en charge améliorée des espaces réservés OneDrive, des espaces réservés GVFS et des fichiers compressés de système d’exploitation Compact.
  • Améliorations supplémentaires et correctifs de bogues

Build 16215

Pour obtenir des informations Windows générales sur la build 16215, visitez le blog Windows.

Réparé

  • WSL n’a plus besoin du mode développeur.
  • Prise en charge des jonctions de répertoires dans drvfs.
  • Gérer la désinstallation des packages de distribution WSL au format appx.
  • Mise à jour de procfs pour afficher les mappages privés et partagés.
  • Ajoutez la possibilité pour wslconfig.exe de nettoyer les distributions partiellement installées ou désinstallées.
  • Ajout de la prise en charge d'IP_MTU_DISCOVER pour les sockets TCP. [GH 1639, 2115, 2205]
  • Déduction de la famille de protocoles pour les routes vers AF_INADDR.
  • Améliorations des appareils série [GH 1929].

Version 16199

Pour obtenir des informations Windows générales sur la build 16199, visitez le blog Windows.

Réparé

  • Aucune modification liée à WSL dans ces versions.

Build 16193

Pour obtenir des informations Windows générales sur la build 16193, visitez le blog Windows.

Réparé

  • Condition de concurrence entre l’envoi de SIGCONT et un arrêt de groupe de threads [GH 1973]
  • modifier les périphériques tty et pty pour signaler FILE_DEVICE_NAMED_PIPE au lieu de FILE_DEVICE_CONSOLE [GH 1840]
  • Correctif SSH pour IP_OPTIONS
  • Déplacement du montage DrvFs vers le démon init [GH 1862, 1968, 1767, 1933]
  • Ajout de la prise en charge dans DrvFs des liens symboliques NT suivants.

Version 16184

Pour obtenir des informations Windows générales sur la build 16184, visitez le blog Windows.

Réparé

  • Tâche de maintenance de package apt supprimée (lxrun.exe /update)
  • Correction de la sortie qui ne s’affiche pas à partir des processus Windows dans node.js [GH 1840]
  • Assouplir les exigences d’alignement dans lxcore [GH 1794]
  • Correction de la gestion de l’indicateur AT_EMPTY_PATH dans plusieurs appels système.
  • Résolution du problème à cause duquel la suppression de fichiers DrvFs avec des handles ouverts entraîne un comportement non défini du fichier [GH 544, 966, 1357, 1535, 1615]
  • /etc/hosts hérite désormais des entrées du fichier hosts Windows (%windir%\system32\drivers\etc\hosts) [GH 1495]

Build 16179

Pour obtenir des informations Windows générales sur la build 16179, visitez le blog Windows.

Réparé

  • Aucune modification de WSL cette semaine.

Build 16176

Pour obtenir des informations Windows générales sur la build 16176, visitez le blog Windows.

Réparé

  • Prise en charge série activée
  • Ajout de l’option de socket IP IP_OPTIONS [GH 1116]
  • Implémentation de la fonction pwritev (lors du chargement du fichier sur nginx/PHP-FPM) [GH 1506]
  • Ajout des options de socket IP IP_MULTICAST_IF & IPV6_MULTICAST_IF [GH 990]
  • Prise en charge des options de socket IP_MULTICAST_LOOP & et IPV6_MULTICAST_LOOP [GH 1678]
  • Ajout de l’option de socket IP(V6)_MTU pour apps node, traceroute, dig, nslookup, host
  • Ajout de l’option de socket IP IPV6_UNICAST_HOPS
  • Améliorations apportées au système de fichiers
    • Autorisation du montage de chemins UNC
    • Activer la prise en charge de CDFS dans drvfs
    • Gérer correctement les autorisations pour les systèmes de fichiers réseau dans drvfs
    • Ajout de la prise en charge des lecteurs distants à drvfs
    • Activation de la prise en charge de FAT dans drvfs
  • Correctifs et améliorations supplémentaires

Résultats LTP

Aucune modification depuis 15042


Build 16170

Pour obtenir des informations Windows générales sur la build 16170, visitez le blog Windows.

Nous avons publié un nouveau billet de blog discutant de nos efforts pour tester WSL.

Réparé

  • Prise en charge de l’option de socket IP_ADD_MEMBERSHIP & IPV6_ADD_MEMBERSHIP [GH 1678]
  • Ajout de la prise en charge de PTRACE_OLDSETOPTIONS. [GH 1692]
  • Correctifs et améliorations supplémentaires

Résultats LTP

Aucune modification depuis 15042


Build 15046 pour la mise à jour Windows 10 Creators Update

Il n’existe plus de correctifs ou de fonctionnalités WSL prévus pour l’inclusion dans Creators Update vers Windows 10. Les notes de publication pour WSL reprennent dans les semaines à venir pour les ajouts ciblant la prochaine mise à jour majeure de Windows. Pour obtenir des informations Windows générales sur la build 15046 et les futures versions Insider, visitez le blog Windows.


Version 15042

Pour obtenir des informations Windows générales sur la build 15042, visitez le Blog Windows.

Réparé

  • Correction d’un interblocage lors de la suppression d’un chemin d’accès se terminant par « . ».
  • Correction d’un problème où FIONBIO ne retournait pas 0 en cas de succès [GH 1683]
  • Résolution du problème avec les lectures de longueur nulle des sockets de datagramme inet
  • Correction du blocage possible en raison d’une condition de concurrence dans une recherche drvfs inode [GH 1675]
  • Prise en charge étendue des données auxiliaires de socket unix ; SCM_CREDENTIALS et SCM_RIGHTS [GH 514, 613, 1326]
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 737
Nombre de tests non réussis (en échec, ignorés, etc…) : 255


Build 15031

Pour obtenir des informations Windows générales sur la build 15031, visitez le blog Windows.

Réparé

  • Correction d'un bogue où time(2) se comportait sporadiquement de manière incorrecte.
  • Correction d'un problème où les appels système *SIGPROCMASK pouvaient endommager le masque de signal.
  • Retournez maintenant la longueur complète de la ligne de commande dans la notification de création de processus WSL. [GH 1632]
  • WSL signale désormais la sortie du thread par le biais de ptrace pour les blocages de GDB. [GH 1196]
  • Correction du bogue à cause duquel ptys se bloque suite à des E/S tmux lourdes. [GH 1358]
  • Validation du délai d’expiration fixe dans de nombreux appels système (futex, semtimedop, ppoll, sigtimedwait, itimer, timer_create)
  • Ajout de la prise en charge d’eventfd EFD_SEMAPHORE [GH 452]
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 737
Nombre de tests échoués (échec, ignoré, etc.) : 255


Build 15025

Pour obtenir des informations Windows générales sur la build 15025, visitez le blog Windows.

Réparé

  • Correction du bogue à l’origine de la rupture de grep 2.27 [GH 1578]
  • Implémentation de l’indicateur EFD_SEMAPHORE pour eventfd2 syscall [GH 452]
  • Implémentation de /proc/[pid]/net/ipv6_route [GH 1608]
  • Prise en charge des E/S pilotées par signal pour les sockets de flux Unix [GH 393, 68]
  • Prise en charge de F_GETPIPE_SZ et F_SETPIPE_SZ [GH 1012]
  • Implémentation de recvmmsg() syscall [GH 1531]
  • Correction d’un bogue où epoll_wait() n’attendait pas [GH 1609]
  • Implémenter /proc/version_signature
  • Le syscall Tee échoue maintenant si les deux descripteurs de fichier font référence au même tube.
  • Implémentation d’un comportement correct pour SO_PEERCRED pour les sockets Unix
  • Correction de la gestion du paramètre non valide tkill syscall
  • Modifications pour augmenter les performances de drvfs
  • Correctif mineur pour le blocage des E/S Ruby
  • Correction de recvmsg() qui retourne EINVAL pour l’indicateur MSG_DONTWAIT pour les sockets inet [GH 1296]
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 732
Nombre de tests non réussis (échoués, ignorés, etc.) : 255


Build 15019

Pour obtenir des informations Windows générales sur la build 15019, visitez le blog Windows.

Réparé

  • Correction d’un bogue indiquant incorrectement l’utilisation du processeur dans procfs pour les outils comme htop (GH 823, 945, 971)
  • Lors de l’appel d’open() avec O_TRUNC sur un fichier existant, inotify génère dorénavant des événements IN_MODIFY avant les événements IN_OPEN.
  • Correctifs du socket Unix getsockopt SO_ERROR pour activer postgres [GH 61, 1354]
  • Implémenter /proc/sys/net/core/somaxconn pour le langage GO
  • La tâche d’arrière-plan de mise à jour du package Apt-get s’exécute désormais masquée dans l’affichage
  • Retrait de l’étendue pour IPv6 localhost (défaillance de Spring-Framework(Java)).
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 714
Nombre de tests non réussis (échec, ignorer, etc.) : 249


Build 15014

Pour obtenir des informations générales sur Windows pour la version 15014, visitez le Blog Windows .

Réparé

  • Ctrl+C fonctionne désormais comme prévu
  • htop et ps auxw affichent maintenant l’utilisation correcte des ressources (GH #516)
  • Traduction de base des exceptions NT aux signaux. (GH #513)
  • Échec de fallocate avec ENOSPC en cas d’espace insuffisant au lieu d’EINVAL (GH #1571)
  • Ajout de /proc/sys/kernel/sem.
  • Implémentation des appels système semop et semtimedop
  • Correction des erreurs nslookup avec l’option de socket IP_RECVTOS et IPV6_RECVTCLASS (GH 69)
  • Prise en charge des options de socket IP_RECVTTL et IPV6_RECVHOPLIMIT
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 709
Nombre de tests non réussis (échec, ignoré, etc.) : 255

Résumé des appels système

Total d’appels Syscalls : 384
Total implémenté : 235
Total bloqué : 22
Total non implémenté : 127


Version 15007

Pour obtenir des informations Windows générales sur la build 15007, visitez le blog Windows.

Problème connu

  • Il existe un bogue connu dans lequel la console ne reconnaît pas certaines entrées Ctrl + <key>. Cela inclut la commande ctrl-c qui agit comme une touche « c » normale.

    • Solution de contournement : mappez une autre touche à Ctrl+C. Par exemple, pour mapper Ctrl+K à Ctrl+C : stty intr \^k. Ce mappage s’effectue par terminal et doit être effectué à chaque lancement de bash. Les utilisateurs peuvent explorer l’option permettant d’inclure ceci dans leur .bashrc

Réparé

  • Correction du problème où l’exécution de WSL consommerait 100% d’un cœur de processeur
  • Option de socket IP_PKTINFO, IPV6_RECVPKTINFO désormais prise en charge. (GH #851, 987)
  • Tronquer l’adresse physique de l’interface réseau à 16 octets dans lxcore (GH #1452, 1414, 1343, 468, 308)
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 709
Nombre de tests non réussis (échec, ignoré, etc.) : 255


Build 15002

Pour obtenir des informations Windows générales sur la build 15002, visitez le blog Windows.

Problème connu

Deux problèmes connus :

  • Il existe un bogue connu dans lequel la console ne reconnaît pas certaines entrées Ctrl + <key>. Cela inclut la commande ctrl-c qui agit comme une touche « c » normale.

    • Solution de contournement : mappez une autre touche à Ctrl+C. Par exemple, pour mapper Ctrl+K à Ctrl+C : stty intr \^k. Ce mappage s’effectue par terminal et doit être effectué à chaque lancement de bash. Les utilisateurs peuvent explorer l’option permettant d’inclure ceci dans leur .bashrc
  • Lorsque WSL s'exécute, un thread système consommera 100% d’un cœur de processeur. La cause racine a été traitée et corrigée en interne.

Réparé

  • Toutes les sessions bash doivent maintenant être créées au même niveau d’autorisation. La tentative de démarrage d’une session à un autre niveau sera bloquée. Cela signifie que les consoles d’administration et non-administrateur ne peuvent pas s’exécuter en même temps. (GH #626)
  • Implémenté les messages NETLINK_ROUTE suivants (nécessite l’administrateur Windows)
    • RTM_NEWADDR (prend en charge ip addr add)
    • RTM_NEWROUTE (prend en charge ip route add)
    • RTM_DELADDR (prend en charge ip addr del)
    • RTM_DELROUTE (prend en charge ip route del)
  • La vérification des tâches planifiées pour les packages à mettre à jour ne s’exécute plus sur une connexion limitée (GH #1371)
  • Correction de l’erreur à cause de laquelle la transmission est bloquée, c.-à-d. bash -c "ls -alR /" | bash -c "cat" (GH #1214)
  • Implémentation de l’option de socket TCP_KEEPCNT (GH #843)
  • Implémentation de l’option de socket IP_MTU_DISCOVER INET (GH #720, 717, 170, 69)
  • Suppression des fonctionnalités héritées pour exécuter des binaires NT à partir du lancement avec recherche de chemin NT. (GH #1325)
  • Correction du mode de /dev/kmsg pour permettre l'accès en lecture par les groupes / autres (0644) (GH #1321)
  • Implémentation de /proc/sys/kernel/random/uuid (GH #1092)
  • Erreur corrigée dans laquelle l’heure de début du processus s’affichait comme l’année 2432 (GH #974)
  • Variable d’environnement TERM par défaut commutée en xterm-256color (GH #1446)
  • Modification de la façon dont la validation de processus est calculée pendant la duplication de processus. (GH #1286)
  • Implémentation de /proc/sys/vm/overcommit_memory. (GH #1286)
  • Implémentation du fichier /proc/net/route (GH #69)
  • Correction de l’erreur où le nom du raccourci était mal localisé (GH #696)
  • Correction de la logique d’analyse elf qui valide incorrectement les en-têtes de programme devant être inférieurs (ou égaux) à PATH_MAX. (GH #1048)
  • Fonction de rappel statfs implémentée pour procfs, sysfs, cgroupfs et binfmtfs (GH #1378)
  • Correction des fenêtres AptPackageIndexUpdate qui ne se fermeront pas (GH #1184, également abordées dans GH #1193)
  • Ajout de la prise en charge de la personnalité ASLR ADDR_NO_RANDOMIZE. (GH #1148, 1128)
  • Amélioration de PTRACE_GETSIGINFO, SIGSEGV, pour les arborescences des appels de procédure gdb appropriées pendant AV (GH #875)
  • L’analyse Elf ne échoue plus pour les fichiers binaires patchelf. (GH #471)
  • DNS VPN propagé à /etc/resolv.conf (GH #416, 1350)
  • Améliorations apportées à la fermeture TCP pour un transfert de données plus fiable. (GH #610, 616, 1025, 1335)
  • Retournez maintenant le code d’erreur correct lorsque trop de fichiers sont ouverts (EMFILE). (GH #1126, 2090)
  • Le journal d’audit Windows signale désormais le nom de l’image dans le processus de création d’audit.
  • Échec de bonne grâce lors du lancement de bash.exe à partir d’une fenêtre bash
  • Ajout d’un message d’erreur quand interop n’est pas en mesure d’accéder à un répertoire de travail sous LxFs (c.-à-d. Bloc-notes.exe .bashrc)
  • Correction du problème où le chemin d’accès Windows était tronqué dans WSL
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 690
Nombre de tests non réussis (échec, ignoré, etc.) : 274


Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

shmctl
shmget
shmdt
shmat

Build 14986

Pour obtenir des informations Windows générales sur la build 14986, visitez le blog Windows.

Réparé

  • Correction des vérifications d’erreurs avec des IOCTL Netlink et Pty
  • La version du noyau signale désormais la version 4.4.0-43 pour la cohérence avec Xenial
  • Bash.exe se lance maintenant lorsque l’entrée est dirigée vers ' nul :' (GH #1259)
  • Les ID de thread sont désormais signalés correctement dans procfs (GH #967)
  • Les indicateurs IN_UNMOUNT | IN_Q_OVERFLOW | IN_IGNORED | IN_ISDIR sont désormais pris en charge dans inotify_add_watch() (GH #1280)
  • Implémentez timer_create et les appels système associés. Cela permet la prise en charge de GHC (GH #307)
  • Correction du problème où le ping a retourné un temps de 0,000 ms (GH #1296)
  • Retournez le code d’erreur correct lorsque trop de fichiers sont ouverts.
  • Correction d’un problème dans WSL où la requête Netlink pour les données d’interface réseau échoue avec EINVAL si l’adresse matérielle de l’interface est de 32 octets (par exemple, l’interface Teredo)
    • Notez que l’utilitaire Linux « ip » contient un bogue où il se bloque si WSL signale une adresse matérielle de 32 octets. Il s’agit d’un bogue dans « ip », et non WSL. L’utilitaire « ip » code en dur la longueur de la mémoire tampon de chaîne utilisée pour imprimer l’adresse matérielle, et cette mémoire tampon est trop petite pour imprimer une adresse matérielle de 32 octets.
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 669
Nombre de tests non réussis (échec, ignoré, etc.) : 258


Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

timer_create
timer_delete
timer_gettime
timer_settime

Version 14971

Pour obtenir des informations Windows générales sur la build 14971, visitez le blog Windows.

Réparé

  • En raison de circonstances au-delà de notre contrôle, il n’existe aucune mise à jour dans cette build pour le sous-système Windows pour Linux. Les mises à jour planifiées régulièrement reprendront lors de la prochaine version.

Résultats LTP :

Inchangé par rapport à 14965
Nombre de tests réussis : 664
Nombre de tests non réussis (échecs, ignorés, etc.) : 263


Version 14965

Pour obtenir des informations Windows générales sur la build 14965, visitez le blog Windows.

Réparé

  • Prise en charge des sockets Netlink RTM_GETLINK et RTM_GETADDR du protocole NETLINK_ROUTE (GH #468)

    • Active ifconfig et les commandes IP pour l’énumération réseau
  • /sbin se trouve maintenant dans le chemin d’accès de l’utilisateur par défaut

  • Chemin d’accès utilisateur NT désormais ajouté au chemin WSL par défaut (c’est-à-dire, vous pouvez maintenant taper notepad.exe sans ajouter System32 au chemin Linux)

  • Ajout de la prise en charge de /proc/sys/kernel/cap_last_cap

  • Les fichiers binaires NT peuvent maintenant être lancés à partir de WSL lorsque le répertoire de travail actuel contient des caractères non ansi (GH #1254)

  • Autorisation de l’arrêt sur le socket de flux Unix déconnecté.

  • Ajout de la prise en charge de PR_GET_PDEATHSIG.

  • Ajout de la prise en charge de CLONE_PARENT

  • Correction de l’erreur à cause de laquelle la transmission est bloquée, c.-à-d. bash -c "ls -alR /" | bash -c "cat" (GH #1214)

  • Gérez les demandes de connexion au terminal actuel.

  • Marquage de /proc/<pid>/oom_score_adj comme accessible en écriture.

  • Ajoutez le dossier /sys/fs/cgroup.

  • sched_setaffinity doit retourner le nombre de bits du masque d'affinité

  • Corrigez la logique de validation ELF qui suppose que les chemins d’accès de l’interpréteur doivent être inférieurs à 64 caractères. (GH #743)

  • Les descripteurs de fichier ouverts peuvent conserver la fenêtre de console ouverte (GH #1187)

  • Correction d’une erreur liée à l’échec de rename() avec une barre oblique de fin sur le nom cible (GH #1008)

  • Implémenter le fichier /proc/net/dev

  • Correction de commandes ping 0.000ms dues à la résolution du minuteur.

  • Implémentation de /proc/self/environ (GH #730)

  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 664
Nombre de tests non réussis (échec, ignoré, etc.) : 263


Build 14959

Pour obtenir des informations Windows générales sur la build 14959, visitez le blog Windows.

Réparé

  • Amélioration de la notification de processus Pico pour Windows. Informations supplémentaires trouvées sur le blog WSL.
  • Stabilité améliorée avec l’interopérabilité Windows
  • Correction de l’erreur 0x80070057 lors du lancement de bash.exe lorsque La protection des données d’entreprise (PDE) est activée
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 665
Nombre de tests non réussis (échec, ignoré, etc.) : 263


Version 14955

Pour obtenir des informations Windows générales sur la build 14955, visitez le Windows Blog.

Réparé

  • En raison de circonstances au-delà de notre contrôle, il n’existe aucune mise à jour dans cette build pour le sous-système Windows pour Linux. Les mises à jour planifiées régulièrement reprendront lors de la prochaine version.

Résultats LTP :

Nombre de tests réussis : 665
Nombre de tests non réussis (échec, ignoré, etc.) : 263


Version 14951

Pour obtenir des informations générales sur Windows à propos de la build 14951, visitez le Blog Windows.

Nouvelle fonctionnalité : Interopérabilité Windows/Ubuntu

Les fichiers binaires Windows peuvent désormais être appelés directement à partir de la ligne de commande WSL. Cela permet aux utilisateurs d’interagir avec leur environnement et système Windows d’une manière qui n’a pas été possible. Par exemple, il est désormais possible pour les utilisateurs d’exécuter les commandes suivantes :

$ export PATH=$PATH:/mnt/c/Windows/System32
$ notepad.exe
$ ipconfig.exe | grep IPv4 | cut -d: -f2
$ ls -la | findstr.exe foo.txt
$ cmd.exe /c dir

Pour plus d’informations, consultez :

Réparé

  • Ubuntu 16.04 (Xenial) est désormais installé pour toutes les nouvelles instances WSL. Les utilisateurs disposant d’instances 14.04 (Trusty) existantes ne seront pas automatiquement mis à niveau.
  • Les paramètres régionaux définis pendant l’installation sont désormais affichés
  • Améliorations du terminal, notamment le bogue dans lequel la redirection d’un processus WSL vers un fichier ne fonctionne pas toujours
  • La durée de vie de la console doit être liée à la durée de vie de bash.exe.
  • La taille de la fenêtre de console doit utiliser la taille visible, et non la taille de la mémoire tampon
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 665
Nombre de tests non réussis (échec, ignoré, etc.) : 263


Build 14946

Pour obtenir des informations générales sur Windows concernant la build 14946, visitez le blog Windows .

Réparé

  • Correction d’un problème empêchant la création de comptes d’utilisateur WSL pour les utilisateurs avec des noms d’utilisateur NT qui contiennent des espaces ou des guillemets.

  • Modifier VolFs et DrvFs pour retourner 0 pour le nombre de liens du répertoire dans la statistique

  • Prise en charge de l’option de socket IPV6_MULTICAST_HOPS.

  • Limite à une seule boucle d’E/S de console par tty. Exemple : la commande suivante est possible :

    • bash -c « données d’écho » | bash -c « ssh user@example.com 'cat > foo.txt' »
  • remplacer des espaces par des onglets dans /proc/cpuinfo (GH #1115)

  • Les fichiers DrvFs s’affichent désormais dans mountinfo avec un nom qui correspond au volume Windows monté

  • /home et /root apparaissent désormais dans mountinfo avec des noms corrects

  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 665
Nombre de tests non réussis (échec, ignoré, etc.) : 263


Build 14942

Pour obtenir des informations Windows générales sur la build 14942, visitez le blog Windows.

Réparé

  • Traitement de plusieurs vérifications d’erreur, notamment le plantage de la mise en réseau « ATTEMPTED EXECUTE OF NOEXECUTE MEMORY » qui bloquait SSH
  • Le support d'inotify pour les notifications générées par des applications Windows sur DrvFs est maintenant activé.
  • Implémentez TCP_KEEPIDLE et TCP_KEEPINTVL pour mongod. (GH #695)
  • Implémentation de l’appel système pivot_root
  • Implémenter l’option de socket pour SO_DONTROUTE
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 665
Nombre de tests non réussis (échec, ignoré, etc.) : 263

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

pivot_root

Version 14936

Pour obtenir des informations générales sur Windows concernant la build 14936, visitez le blog Windows .

Remarque : WSL installe Ubuntu version 16.04 (Xenial) au lieu d’Ubuntu 14.04 (Trusty) dans une prochaine version. Cette modification s’applique aux insiders qui installent de nouvelles instances (lxrun.exe /install ou première exécution de bash.exe). Les instances existantes avec Trusty ne seront pas mises à niveau automatiquement. Les utilisateurs peuvent mettre à niveau leur image Trusty vers Xenial à l’aide de la commande do-release-upgrade.

Problème connu

WSL rencontre un problème avec certaines implémentations de socket. La vérification d’erreur se manifeste comme un plantage avec l’erreur « ATTEMPTED EXECUTE OF NOEXECUTE MEMORY ». La manifestation la plus courante de ce problème est un incident lors de l’utilisation de ssh. La cause racine est résolue sur les builds internes et envoyée (push) aux versions Insiders dès que possible.

Réparé

  • Implémentation de l’appel système chroot
  • Améliorations apportées à l’inotify , notamment la prise en charge des notifications générées à partir d’applications Windows sur des DrvFs
    • Correction : prise en charge d’inotify pour les modifications provenant d’applications Windows non disponibles pour le moment.
  • La liaison de socket à IPV6::<port n> prend désormais en charge IPV6_V6ONLY (GH #68, #157, #393, #460, #674, #740, #982, #996)
  • Implémentation du comportement WNOWAIT pour l’appel système waitid (GH #638)
  • Prise en charge des options de socket IP IP_HDRINCL et IP_TTL
  • Retour immédiat de read() de longueur nulle (GH #975)
  • Gérez correctement les noms de fichiers et les préfixes de nom de fichier qui n’incluent pas de terminateur NULL dans un fichier .tar.
  • Prise en charge d’epoll pour /dev/null
  • Correction de la source de temps /dev/alarm
  • Bash -c désormais en mesure de rediriger vers un fichier
  • Correctifs et améliorations supplémentaires

Résultats LTP :

Nombre de tests réussis : 664
Nombre de tests non réussis (ayant échoué, ignorés, etc.) : 264

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

chroot

Version 14931

Pour obtenir des informations Windows générales sur la build 14931, visitez le Blog Windows.

Réparé

  • En raison de circonstances au-delà de notre contrôle, il n’existe aucune mise à jour dans cette build pour le sous-système Windows pour Linux. Les mises à jour planifiées régulièrement reprendront dans la prochaine version.

Version 14926

Pour obtenir des informations Windows générales sur la build 14926, visitez le blog Windows.

Réparé

  • Ping fonctionne désormais dans les consoles qui n’ont pas de privilèges d’administrateur
  • Ping6 désormais pris en charge, également sans privilèges d’administrateur
  • Prise en charge par inotify des fichiers modifiés par le biais de WSL. (GH #216)
    • Indicateurs pris en charge :
      • inotify_init1 : LX_O_CLOEXEC, LX_O_NONBLOCK
      • inotify_add_watch events : LX_IN_ACCESS, LX_IN_MODIFY, LX_IN_ATTRIB, LX_IN_CLOSE_WRITE, LX_IN_CLOSE_NOWRITE, LX_IN_OPEN, LX_IN_MOVED_FROM, LX_IN_MOVED_TO, LX_IN_CREATE, LX_IN_DELETE, LX_IN_DELETE_SELF, LX_IN_MOVE_SELF
      • inotify_add_watch attributes : LX_IN_DONT_FOLLOW, LX_IN_EXCL_UNLINK, LX_IN_MASK_ADD, LX_IN_ONESHOT, LX_IN_ONLYDIR
      • lecture de sortie : LX_IN_ISDIR, LX_IN_IGNORED
    • Problème connu : la modification de fichiers à partir d’applications Windows ne génère aucun événement
  • Le socket Unix prend désormais en charge SCM_CREDENTIALS

Résultats LTP :

Nombre de tests réussis : 651
Nombre de tests non réussis (échec, ignoré, etc.) : 258


Version 14915

Pour obtenir des informations Windows générales sur la build 14915, visitez le blog Windows.

Réparé

  • Paire de sockets pour les sockets de datagramme Unix (GH #262)
  • Prise en charge des sockets Unix pour SO_REUSEADDR
  • Support des sockets UNIX de SO_BROADCAST (GH #568)
  • Support des sockets Unix pour SOCK_SEQPACKET (GH #758, #546)
  • Ajout de la prise en charge de l’envoi, de la réception et de l’arrêt des sockets de datagramme Unix
  • Correction de la vérification de bogue due à une validation de paramètre mmap non valide pour les adresses non fixes. (GH #847)
  • Prise en charge de l’interruption/de la reprise des états des terminaux
  • Prise en charge de l’IOCTL TIOCPKT pour débloquer l’utilitaire Screen (GH #774)
    • Problème connu : les clés de fonction ne sont pas opérationnelles
  • Correction d’une concurrence dans TimerFd qui peut provoquer l’accès à un membre libéré « ReaderReady » par LxpTimerFdWorkerRoutine (GH #814)
  • Activation de la prise en charge des appels système redémarrables pour futex, poll et clock_nanosleep
  • Ajout de la prise en charge du montage de liaison
  • Prise en charge de l’annulation du partage des espaces de noms de montage
    • Problème connu : quand vous créez un espace de noms de montage avec unshare(CLONE_NEWNS), le répertoire de travail actuel continue de pointer vers l’ancien espace de noms
  • Améliorations supplémentaires et correctifs de bogues

Version 14905

Pour obtenir des informations Windows générales sur la build 14905, visitez le blog Windows.

Réparé

  • Prise en charge des appels système redémarrables (GH #349, GH #520)
  • Les liens symboliques vers les répertoires se terminant par / sont maintenant opérationnels (GH #650)
  • Implémentation de RNDGETENTCNT ioctl pour /dev/random
  • Implémentation des fichiers /proc/[pid]/mounts, /proc/[pid]/mountinfo et /proc/[pid]/mountstats
  • Correctifs et améliorations supplémentaires

Build 14901

Première version d'Insider postérieure à la mise à jour anniversaire de Windows 10.

Pour obtenir des informations Windows générales sur la build 14901, visitez le Blog Windows.

Réparé

  • Correction du problème lié à la barre oblique de fin
    • Les commandes telles que $ mv a/c/ a/b/ fonctionnent maintenant
  • L'installation demande maintenant si les paramètres régionaux d'Ubuntu doivent être ajustés pour correspondre à ceux de Windows.
  • Prise en charge de procfs pour le dossier ns
  • Ajout du montage et démontage pour les systèmes de fichiers tmpfs, procfs et sysfs
  • Corriger la signature ABI 32 bits de mknod[at]
  • Déplacement des sockets Unix vers le modèle de distribution
  • La taille de mémoire tampon recv du socket INET définie à l’aide de setsockopt doit être respectée
  • Implémentation de l’indicateur de message de réception de socket Unix MSG_CMSG_CLOEXEC
  • Redirection des canaux stdin/stdout de processus Linux (GH #2)
    • Autorisation de la transmission de commandes bash -c dans CMD. Exemple : >dir | bash -c « grep foo »
  • Bash peut maintenant être installé sur des systèmes avec plusieurs fichiers de page (GH #538, #358)
  • La taille de la mémoire tampon de socket INET par défaut doit correspondre à celle de la configuration Ubuntu par défaut
  • Alignement des syscalls xattr sur listxattr
  • Renvoyer uniquement des interfaces avec une adresse IPv4 valide de SIOCGIFCONF
  • Correction de l’action par défaut du signal quand elle est injectée par ptrace
  • implémenter /proc/sys/vm/min_free_kbytes
  • Utilisation des valeurs de Registre du contexte d’ordinateur lors de la restauration du contexte dans sigreturn
    • Cela résout le problème où java et javac étaient bloqués pour certains utilisateurs
  • Implémenter /proc/sys/kernel/hostname

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

waitid
epoll_pwait


Build 14388 pour la mise à jour anniversaire de Windows 10

Pour obtenir des informations Windows générales sur la build 14388, visitez le blog Windows.

Réparé

  • Correctifs pour préparer la mise à jour anniversaire De Windows 10 le 8/2
    • Pour plus d’informations sur WSL dans la mise à jour anniversaire, consultez notre blog

Version 14376

Pour obtenir des informations Windows générales sur la build 14376, visitez le blog Windows.

Réparé

  • Suppression de certaines instances où apt-get se bloque (GH #493)
  • Correction d’un problème où les montages vides n’étaient pas gérés correctement
  • Correction d’un problème où les ramdisks n’étaient pas montés correctement
  • Modification de l’acceptation des sockets UNIX pour prendre en charge les indicateurs (GH #451 partiel)
  • Correction de l’écran bleu lié au réseau commun
  • Correction de l’écran bleu lors de l’accès à /proc/[pid]/task (GH #523)
  • Correction de l’utilisation élevée du processeur pour certains scénarios pty (GH #488, #504)
  • Correctifs et améliorations supplémentaires

Version 14371

Pour obtenir des informations générales sur la version 14371 de Windows, visitez le Blog Windows .

Réparé

  • Correction de la concurrence de timing avec SIGCHLD et wait() lors de l’utilisation de ptrace
  • Correction de certains comportements quand les chemins se terminent par une barre oblique / (GH #432)
  • Résolution du problème lié à l’échec du renommage/de l’annulation de lien en raison de handles ouverts vers des enfants
  • Correctifs et améliorations supplémentaires

Build 14366

Pour obtenir des informations Windows générales sur la build 14366, visitez le blog Windows.

Réparé

  • Correction de la création de fichiers par le biais de liens symboliques
  • Ajout de listxattr pour Python (GH 385)
  • Correctifs et améliorations supplémentaires

Prise en charge de syscall

  • Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

listxattr

Version 14361

Pour obtenir des informations Windows générales sur la build 14361, visitez le blog Windows.

Réparé

  • DrvFs est maintenant sensible à la casse lors de l’exécution dans Bash sur Ubuntu sur Windows.
    • Les utilisateurs peuvent utiliser case.txt et CASE.TXT sur leurs lecteurs /mnt/c
    • Le respect de la casse est pris en charge uniquement dans bash sur Ubuntu sur Windows. En dehors de Bash NTFS signale correctement les fichiers, mais un comportement inattendu peut se produire lors de l’interaction avec les fichiers de Windows.
    • La racine de chaque volume (c.-à-d. /mnt/c) n’est pas sensible à la casse
    • Vous trouverez plus d’informations sur la gestion de ces fichiers dans Windows ici.
  • Amélioration considérable de la prise en charge de pty/tty. Applications comme TMUX désormais prises en charge (GH #40)
  • Résolution du problème d’installation où les comptes d’utilisateur ne sont pas toujours créés
  • Structure arg de ligne de commande optimisée permettant une liste d’arguments extrêmement longue. (GH #153)
  • Désormais en mesure de supprimer les fichiers en lecture seule et de modifier leurs autorisations depuis DrvFs
  • Correction de certaines instances où le terminal se bloque lors de la déconnexion (GH #43)
  • chmod et chown fonctionnent maintenant sur des appareils tty
  • Autoriser la connexion à 0.0.0.0 et :: en tant que localhost (GH #388)
  • Gestion d’une longueur de vecteur d’E/S >1 pour sendmsg/recvmsg (GH #376 partiel)
  • Les utilisateurs peuvent désormais refuser le fichier d’hôtes générés automatiquement (GH #398)
  • Mettre automatiquement en correspondance les paramètres régionaux Linux aux paramètres régionaux NT pendant l’installation (GH #11)
  • Ajout du fichier /proc/sys/vm/swappiness (GH #306)
  • Fermeture correcte de strace
  • Autorisation de la rouverture des canaux par le biais de /proc/self/fd (GH #222)
  • Masquage des répertoires sous %LOCALAPPDATA%\lxss à partir de DrvFs (GH #270)
  • Meilleure gestion de bash.exe ~. Commandes telles que « bash ~ -c ls » désormais prises en charge (GH #467)
  • Les sockets notifient désormais la lecture epoll disponible pendant l’arrêt (GH #271)
  • lxrun /uninstall fait un meilleur travail de suppression des fichiers et dossiers
  • Correction de ps -f (GH #246)
  • Prise en charge améliorée des applications x11 telles que xEmacs (GH #481)
  • Mise à jour de la taille de pile de threads initiale pour correspondre au paramètre Ubuntu par défaut et signaler correctement la taille au syscall get_rlimit (GH #172, #258)
  • Amélioration du signalement des noms d’image de processus pico (par exemple, pour l’audit)
  • Implémentation de /proc/mountinfo pour la commande df
  • Correction du code d’erreur de lien symbolique pour le nom d’enfant. et..
  • Améliorations supplémentaires, correctifs de bogues et améliorations.

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

GETTIMER
MKNODAT
RENAMEAT
SENDFILE
SENDFILE64
SYNC_FILE_RANGE

Version 14352

Pour obtenir des informations Windows générales sur la build 14352, visitez le blog Windows.

Réparé

  • Correction du problème où les fichiers volumineux n’étaient pas téléchargés / créés correctement. Cela doit débloquer npm et d’autres scénarios (GH #3, GH #313)
  • Suppression de certaines instances où les sockets se bloquent
  • Correction de certaines erreurs de ptrace
  • Correction d’un problème avec WSL autorisant les noms de fichiers de plus de 255 caractères
  • Prise en charge améliorée des caractères non anglais
  • Ajouter les données actuelles du fuseau horaire Windows et définir comme valeur par défaut
  • ID d’appareil unique pour chaque point de montage (correctif JRE – GH #49)
  • Correction du problème lié aux chemins contenant « . » et « .. »
  • Ajout de la prise en charge FIFO (GH #71)
  • Mise à jour du format resolv.conf pour qu’il corresponde au format Ubuntu natif
  • Nettoyage de certains procfs
  • Ping activé pour les consoles Administrateur (GH #18)

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

FALLOCATE
EXECVE
LGETXATTR
FGETXATTR

Build 14342

Pour obtenir des informations générales sur Windows et la build 14342, consultez le blog Windows.

Vous trouverez des informations sur VolFs et DriveFs sur le blog WSL.

Réparé

  • Correction du problème d’installation lorsque l’utilisateur Windows avait des caractères Unicode dans le nom d’utilisateur
  • La solution de contournement apt-get update udev dans les questions fréquentes (FAQ) est désormais fournie par défaut lors de la première exécution
  • Liens symboliques activés dans les répertoires DriveFs (/mnt/<drive>)
  • Symlinks fonctionne désormais entre DriveFs et VolFs
  • Problème d’analyse de chemin d’accès de niveau supérieur résolu : ls .// fonctionne désormais comme prévu
  • Fonctionnement de l’installation de npm sur DriveFs et des options -g
  • Correction d’un problème empêchant le lancement du serveur PHP
  • Mise à jour des valeurs d’environnement par défaut, telles que $PATH pour établir une correspondance plus étroite avec Ubuntu natif
  • Ajout d’une tâche de maintenance hebdomadaire dans Windows pour mettre à jour le cache du package apt
  • Correction d’un problème avec la validation d’en-tête ELF, WSL prend désormais en charge toutes les options Melkor
  • L’interpréteur de commandes Zsh est fonctionnel
  • Les fichiers binaires Go précompilés sont désormais pris en charge
  • Localisation correcte de l’invite lors de la première exécution de Bash.exe
  • /proc/meminfo retourne désormais des informations correctes
  • Prise en charge des sockets dans VFS
  • Montage de /dev en tant que tempfs
  • Fifo est désormais pris en charge
  • Les systèmes multicœurs s’affichent désormais correctement dans /proc/cpuinfo
  • Téléchargement d’améliorations et de messages d’erreur supplémentaires lors de la première exécution
  • Améliorations et correctifs de bogues Syscall. Prise en charge de la liste syscall ci-dessous.
  • Correctifs et améliorations supplémentaires

Problèmes connus

  • Résolution impossible de « .. » sur DriveFs dans certains cas

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls nouveaux ou améliorés qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

FCHOWNAT
GETEUID
GETGID
GETRESUID
GETXATTR
PTRACE
SETGID
SETGROUPS
SETHOSTNAME
SETXATTR

Build 14332

Pour obtenir des informations Windows générales sur la build 14332, visitez le blog Windows.

Réparé

  • Meilleure génération resolv.conf, y compris la hiérarchisation des entrées DNS
  • Problème lié au déplacement de fichiers et de répertoires entre les lecteurs /mnt et non-/mnt
  • Les fichiers Tar peuvent maintenant être créés avec des liens symboliques
  • Ajout du répertoire /run/lock par défaut lors de la création de l’instance
  • Mettre à jour /dev/null pour retourner les informations statistiques appropriées
  • Erreurs supplémentaires lors du téléchargement lors de la première exécution
  • Améliorations et correctifs de bogues Syscall. Prise en charge de la liste syscall ci-dessous.
  • Améliorations supplémentaires, correctifs de bogues et améliorations.

Prise en charge de syscall

Voici le nouveau syscall qui a une certaine implémentation dans WSL. Le syscall figurant dans cette liste est pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

READLINKAT

Build 14328

Pour obtenir des informations Windows générales sur la build 14332, visitez le blog Windows.

Nouvelles fonctionnalités

  • Prenez désormais en charge les utilisateurs Linux. L’installation de Bash sur Ubuntu sur Windows demande la création d’un utilisateur Linux. Pour plus d’informations, visitez https://aka.ms/wslusers
  • Le nom d'hôte est désormais défini comme le nom d'ordinateur Windows, plus de @localhost
  • Pour plus d’informations sur la build 14328, visitez : https://aka.ms/wip14328

Réparé

  • Améliorations de symlink pour les fichiers non /mnt/<drive>
    • l’installation de npm fonctionne maintenant
    • Maintenant, jdk / jre est installable à l’aide d’instructions trouvées ici.
    • Problème connu : les liens symboliques ne fonctionnent pas pour les montages Windows. Les fonctionnalités seront disponibles dans une build ultérieure
  • top et htop s’affichent maintenant
  • Messages d’erreur supplémentaires pour certains échecs d’installation
  • Améliorations et correctifs de bogues Syscall. Prise en charge de la liste syscall ci-dessous.
  • Améliorations supplémentaires, correctifs de bogues et améliorations.

Prise en charge de syscall

Vous trouverez ci-dessous une liste de syscalls qui ont une implémentation dans WSL. Les syscalls figurant dans cette liste sont pris en charge dans au moins un scénario, mais il est possible que tous les paramètres ne soient pas pris en charge pour l’instant.

ACCEPT
ACCEPT4
ACCESS
ALARM
ARCH_PRCTL
BIND
BRK
CAPGET
CAPSET
CHDIR
CHMOD
CHOWN
CLOCK_GETRES
CLOCK_GETTIME
CLOCK_NANOSLEEP
CLONE
CLOSE
CONNECT
CREAT
DUP
DUP2
DUP3
EPOLL_CREATE
EPOLL_CREATE1
EPOLL_CTL
EPOLL_WAIT
EVENTFD
EVENTFD2
EXECVE
EXIT
EXIT_GROUP
FACCESSAT
FADVISE64
FCHDIR
FCHMOD
FCHMODAT
FCHOWN
FCHOWNAT
FCNTL64
FDATASYNC
FLOCK
FORK
FSETXATTR
FSTAT64
FSTATAT64
FSTATFS64
FSYNC
FTRUNCATE
FTRUNCATE64
FUTEX
GETCPU
GETCWD
GETDENTS
GETDENTS64
GETEGID
GETEGID16
GETEUID
GETEUID16
GETGID
GETGID16
GETGROUPS
GETPEERNAME
GETPGID
GETPGRP
GETPID
GETPPID
GETPRIORITY
GETRESGID
GETRESGID16
GETRESUID
GETRESUID16
GETRLIMIT
GETRUSAGE
GETSID
GETSOCKNAME
GETSOCKOPT
GETTID
GETTIMEOFDAY
GETUID
GETUID16
GETXATTR
GET_ROBUST_LIST
GET_THREAD_AREA
INOTIFY_ADD_WATCH
INOTIFY_INIT
INOTIFY_RM_WATCH
IOCTL
IOPRIO_GET
IOPRIO_SET
KEYCTL
KILL
LCHOWN
LINK
LINKAT
LISTEN
LLSEEK
LSEEK
LSTAT64
MADVISE
MKDIR
MKDIRAT
MKNOD
MLOCK
MMAP
MMAP2
MOUNT
MPROTECT
MREMAP
MSYNC
MUNLOCK
MUNMAP
NANOSLEEP
NEWUNAME
OPEN
OPENAT
PAUSE
PERF_EVENT_OPEN
PERSONALITY
PIPE
PIPE2
POLL
PPOLL
PRCTL
PREAD64
PROCESS_VM_READV
PROCESS_VM_WRITEV
PSELECT6
PTRACE
PWRITE64
READ
READLINK
READV
REBOOT
RECV
RECVFROM
RECVMSG
RENAME
RMDIR
RT_SIGACTION
RT_SIGPENDING
RT_SIGPROCMASK
RT_SIGRETURN
RT_SIGSUSPEND
RT_SIGTIMEDWAIT
SCHED_GETAFFINITY
SCHED_GETPARAM
SCHED_GETSCHEDULER
SCHED_GET_PRIORITY_MAX
SCHED_GET_PRIORITY_MIN
SCHED_SETAFFINITY
SCHED_SETPARAM
SCHED_SETSCHEDULER
SCHED_YIELD
SELECT
SEND
SENDMMSG
SENDMSG
SENDTO
SETDOMAINNAME
SETGID
SETGROUPS
SETHOSTNAME
SETITIMER
SETPGID
SETPRIORITY
SETREGID
SETRESGID
SETRESUID
SETREUID
SETRLIMIT
SETSID
SETSOCKOPT
SETTIMEOFDAY
SETUID
SETXATTR
SET_ROBUST_LIST
SET_THREAD_AREA
SET_TID_ADDRESS
SHUTDOWN
SIGACTION
SIGALTSTACK
SIGPENDING
SIGPROCMASK
SIGRETURN
SIGSUSPEND
SOCKET
SOCKETCALL
SOCKETPAIR
SPLICE
STAT64
STATFS64
SYMLINK
SYMLINKAT
SYNC
SYSINFO
TEE
TGKILL
TIME
TIMERFD_CREATE
TIMERFD_GETTIME
TIMERFD_SETTIME
TIMES
TKILL
TRUNCATE
TRUNCATE64
UMASK
UMOUNT
UMOUNT2
UNLINK
UNLINKAT
UNSHARE
UTIME
UTIMENSAT
UTIMES
VFORK
WAIT4
WAITPID
WRITE
WRITEV