Sous-système Linux : l'accès aux fichiers est plus simple dans Windows 10 May 2019

Sous-système Linux : l’accès aux fichiers est plus simple dans Windows 10 May 2019

Mais encore imparfait

Avatar de l'auteur

David Legrand

Publié dansLogiciel

08/04/2019
43
Sous-système Linux : l'accès aux fichiers est plus simple dans Windows 10 May 2019

S'il est désormais facile d'utiliser un terminal Linux depuis Windows 10, l'interaction entre les deux systèmes était en partie incomplète. L'édition May 2019 de l'OS de Microsoft améliorera les choses.

La nouvelle évolution de Windows 10May 2019 (ex-19H1), arrive. Si elle apporte de nombreuses nouveautés, l'une d'elles était particulièrement attendue des développeurs : un meilleur accès aux fichiers du sous-système Linux (WSL). 

Pour rappel, cette fonctionnalité permet de disposer d'un terminal tel qu'on l'obtiendrait sous Debian, Kali, OpenSUSE ou Ubuntu, avec des performances presque natives, la virtualisation n'intervenant pas. De quoi concilier le meilleur des deux mondes sans effort ni dual boot. 

Un dispositif assez complet, mais pas sans défauts. Ainsi, outre l'absence d'interface graphique, WSL ne permet pas d'accéder facilement aux fichiers de ses distributions depuis l'Explorateur de Windows (par exemple). Surtout, l'accès ne peut se faire qu'en lecture seule, au risque de corrompre les données. Heureusement, une solution a été trouvée.

Microsoft intègre un serveur 9P dans Windows 10

La technologie utilisée n'a rien de bien nouveau : Windows va exploiter le protocole d'accès aux fichiers et périphériques de Plan 9, un système d'exploitation des Bell Labs sorti dans les années 90 : 9P.

Il est utilisé sous forme d'un serveur intégré aux instances WSL, permettant l'accès aux données depuis un pilote et un service Windows faisant office de client. La communication entre ces deux éléments se fait via des sockets Unix (AF_UNIX), introduits dans l'April 2018 Update de Windows 10

WSL et les distributions installées sont donc vues désormais comme des éléments du réseau auquel on peut accéder via un chemin UNC (Universal Naming Convention) :

\\wsl$\
\\wsl$\nom_de_la_distribution

L'accès sera ainsi identique à celui d'une ressource du réseau local, même si la racine de WSL n'est pas affichée dans la section Réseau de l'Explorateur de fichiers. On peut néanmoins monter chaque élément comme un lecteur réseau ou le placer en raccourci dans l'accès rapide. Il y a toutefois d'autres subtilités (et astuces) à connaitre.

Plus d'options pour WSL

Tout d'abord, l'application wsl.exe dispose désormais d'options supplémentaires permettant de lister les distributions installées et/ou lancées, mais aussi de les importer/exporter d'une machine à l'autre. On peut les « terminer » (ce qui revient à les fermer), les désenregistrer du système ou encore décider laquelle est utilisée par défaut.

Pour celles installées avant Windows 10 May 2019, une mise à jour sera possible avec le nouveau système de fichiers.

WSL Windows 10 April UpdateWSL Windows 10 May 2019
L'aide de l'application wsl.exe dans Windows 10 April 2018 et May 2019

Un accès depuis l'Explorateur ou PowerShell

Microsoft prévient qu'il ne faut pas accéder aux fichiers d'une distribution WSL via le répertoire AppData de l'utilisateur, ce qui reviendrait à outrepasser le serveur 9P, donc potentiellement de les endommager.

Ressource réseau oblige, l'accès ne peut pas se faire via cd dans l'Invite de commandes classique (cmd.exe).  On peut par contre utiliser le chemin d'une distribution comme source ou destination, pour ouvrir ou copier un fichier par exemple. PowerShell n'est pas concerné par cette limitation, mais ne peut accéder à la racine :

WSL PowerShell Windows 10 May 2019

On regrette au passage que le nom des distributions installées ne profite pas (encore ?) de l'auto-complétion via la touche Tabulation. De fait, passer par l'Explorateur sera souvent la solution la plus simple. Notez qu'il est possible de l'ouvrir dans le dossier courant d'un terminal WSL avec la commande suivante :

explorer.exe .

Dans la version actuelle de Windows 10, elle ouvre le répertoire System32.

Une évolution bienvenue, à compléter

Au final, l'ensemble s'avère pratique, même s'il faut encore composer avec des limitations pouvant demander une révision des habitudes. Mais l'intégration du serveur 9P apparaît comme un bon compromis.

Depuis l'annonce de cette fonctionnalité, certains points ont d'ailleurs été renforcés. Il était par exemple au départ impossible d'accéder aux fichiers d'une distribution WSL tant que son terminal n'avait pas été ouvert une première fois, une action mettant en route le serveur. Ce n'est désormais plus nécessaire : chercher à accéder aux fichiers suffit à son lancement.

On apprécierait néanmoins que d'autres points soient traités d'ici la publication de la mise à jour May 2019, comme l'ajout automatique d'un raccourci vers la racine WSL dans l'Accès rapide lorsqu'au moins une distribution est installée.

Microsoft incite en tous cas les utilisateurs à faire part de leurs retours via GitHub ou directement via Twitter.

43
Avatar de l'auteur

Écrit par David Legrand

Tiens, en parlant de ça :

Poing Dev

Le poing Dev – Round 7

Meuh sept super !

22:32 Next 7
Logo de Gaia-X sour la forme d’un arbre, avec la légende : infrastructure de données en forme de réseau

Gaia-X « vit toujours » et « arrive à des étapes très concrètes »

« Money time »

18:06 WebSécu 3

Trois consoles portables en quelques semaines

Et une nouvelle façon de concevoir le jeu se confirme

10:45 Hard 36

Sommaire de l'article

Introduction

Microsoft intègre un serveur 9P dans Windows 10

Plus d'options pour WSL

Un accès depuis l'Explorateur ou PowerShell

Une évolution bienvenue, à compléter

Poing Dev

Le poing Dev – Round 7

Next 7
Logo de Gaia-X sour la forme d’un arbre, avec la légende : infrastructure de données en forme de réseau

Gaia-X « vit toujours » et « arrive à des étapes très concrètes »

WebSécu 3

Trois consoles portables en quelques semaines

Hard 36
Une tasse estampillée "Keep calm and carry on teaching"

Cyberrésilience : les compromis (provisoires) du trilogue européen

DroitSécu 3

#LeBrief : fuite de tests ADN 23andMe, le milliard pour Android Messages, il y a 30 ans Hubble voyait clair

#Flock a sa propre vision de l’inclusion

Flock 25
Un Sébastien transformé en lapin par Flock pour imiter le Quoi de neuf Docteur des Looney Tunes

Quoi de neuf à la rédac’ #10 : nous contacter et résumé de la semaine

43
Autoportrait Sébastien

[Autoportrait] Sébastien Gavois : tribulations d’un pigiste devenu rédac’ chef

Next 20
Logo de StreetPress

Pourquoi le site du média StreetPress a été momentanément inaccessible

Droit 21
Amazon re:Invent

re:Invent 2023 : Amazon lance son assistant Q et plusieurs services IA, dont la génération d’images

IA 14
Un œil symbolisant l'Union européenne, et les dissensions et problèmes afférents

Le Conseil de l’UE tire un bilan du RGPD, les États membres réclament des « outils pratiques »

Droit 6

19 associations européennes de consommateurs portent plainte contre Meta

DroitSocials 16

#LeBrief : Ariane 6 l’été prochain, Nextcloud rachète Roundcube, désinformation via la pub

Chiffre et formules mathématiques sur un tableau

CVSS 4.0 : dur, dur, d’être un expert !

Sécu 16
Une tête de fusée siglée Starlink.

Starlink accessible à Gaza sous contrôle de l’administration israélienne

Web 35
Fibre optique

G-PON, XGS-PON et 50G-PON : jusqu’à 50 Gb/s en fibre optique

HardWeb 53
Photo d'un immeuble troué de part en part

Règlement sur la cyber-résilience : les instances européennes en passe de conclure un accord

DroitSécu 10
lexique IA parodie

AGI, GPAI, modèles de fondation… de quoi on parle ?

IA 11

#LeBrief : logiciels libres scientifiques, fermeture de compte Google, « fabriquer » des femmes pour l’inclusion

livre dématérialisé

Des chercheurs ont élaboré une technique d’extraction des données d’entrainement de ChatGPT

IAScience 3
Un chien avec des lunettes apprend sur une tablette

Devenir expert en sécurité informatique en 3 clics

Sécu 11
Logo ownCloud

ownCloud : faille béante dans les déploiements conteneurisés utilisant graphapi

Sécu 16
Le SoC Graviton4 d’Amazon AWS posé sur une table

Amazon re:invent : SoC Graviton4 (Arm), instance R8g et Trainium2 pour l’IA

Hard 12
Logo Comcybergend

Guéguerre des polices dans le cyber (OFAC et ComCyberMi)

Sécu 10

#LeBrief : faille 0-day dans Chrome, smartphones à Hong Kong, 25 ans de la Dreamcast

Mur d’OVHcloud à Roubaix, avec le logo OVHcloud

OVHcloud Summit 2023 : SecNumCloud, IA et Local Zones

HardWeb 2
algorithmes de la CAF

Transparence, discriminations : les questions soulevées par l’algorithme de la CAF

IASociété 62

Plainte contre l’alternative paiement ou publicité comportementale de Meta

DroitIA 40
Nuage (pour le cloud) avec de la foudre

Économie de la donnée et services de cloud : l’Arcep renforce ses troupes

DroitWeb 0
De vieux ciseaux posés sur une surface en bois

Plus de 60 % des demandes de suppression reçues par Google émanent de Russie

Société 7
Une vieille boussole posée sur un plan en bois

La Commission européenne et Google proposent deux bases de données de fact-checks

DroitWeb 3

#LeBrief : des fichiers Google Drive disparaissent, FreeBSD 14, caméras camouflées, OnePlus 12

Hubble mission maintenance

Il y a 30 ans, Hubble recevait sa première mission de maintenance

Science 18

Des menottes autour d'un rouleau de billets de banque

Les deux principaux responsables de l’agence de cybersécurité ukrainienne accusés de corruption

DroitÉcoSécu 8

Google Messages

Sur Android, Messages fête son milliard d’utilisateurs, de nouvelles fonctions en approche

WebSoft 19

Une femme en blouse blanche et portant des lunettes adaptées utilise un séquenceur à ADN

Tests ADN : 23andMe avoue que les infos d’un « nombre significatif » d’utilisateurs ont fuité

Sécu 7

Commentaires (43)


meyrand018 Abonné
Il y a 5 ans

“L’édition May 2019 de l’OS de Microsoft améliorere les choses.” = petite coquille dans le chapo&nbsp;<img data-src=" />


Vincent_H Abonné
Il y a 5 ans

Oui corrigé juste après la publication, fallait juste que le cache soit à jour ;)


Kwacep Abonné
Il y a 5 ans

Pour le sous-titre j’aurai écrit “May encore imparfait”.
Maintenant je vais lire l’article


RedWave
Il y a 5 ans

Mieux : “Theresa ne fait plus le pingouin”&nbsp;<img data-src=" />


Kwacep Abonné
Il y a 5 ans

Ohh, j’ai eu du mal à suivre. Mais très bien trouvé <img data-src=" />


revker
Il y a 5 ans

Est-ce qu’on pourra par exemple installer un serveur web dans la partie “Linux” et monter les fichiers dans un IDE installé sur Windows ?

En gros, en tant que développeur WEB, me passer d’une machine virtuelle dédiée.


Zaxe
Il y a 5 ans

Je trouve que ça devient une usine à gaz WSL.


Furanku Abonné
Il y a 5 ans

En tant que dev web la question est : tu fais quoi sur Windows ? <img data-src=" />


loclamor Abonné
Il y a 5 ans

Certaines sociétés ne t’autorisent pas autre chose qu’un windows, avec une pléthore de VM installées dessus. Le WSL est une bouffée d’air frais pour nous :)

+1 pour l’ide sur le partage WSL !


David_L Abonné
Il y a 5 ans

Oui comme dit dans l’article sur WSL, on peut installer un serveur web (il faut le démarrer manuellement après l’installation par contre). Et donc accéder à ses fichiers depuis WSL$ dans Windows 10 May 2019.&nbsp; Attention quand même à disposer des bons droits (utilisateur courant).

On peut aussi ouvrir un fichier du WSL dans une application directement depuis le terminal WSL genre :&nbsp;

notepad.exe fichier.txt


goibniu
Il y a 5 ans

Ça va pouvoir accélérer les temps d’accès aux fichiers avec Docker ?


crocodudule
Il y a 5 ans

Ma question est peut être débile, mais pourquoi microsoft n’intègre pas en natif les systèmes de partition linux (par définition libre) et inversement pourquoi microsoft ne rend pas libre le NTFS ?


Jarodd Abonné
Il y a 5 ans

J’ai hâte d’installer wine <img data-src=" />


Lutty
Il y a 5 ans

+1000
C’est tellement énervant cette non compatibilité. De même que Windows qui me demande toujours de formater ma clé car il ne comprend pas les systèmes de fichier Linux :(


Furanku Abonné
Il y a 5 ans

Alors faut changer de boîte ou de DSI <img data-src=" /> <img data-src=" />






Jarodd a écrit :

J’ai hâte d’installer wine <img data-src=" />


Micro-ception ! <img data-src=" />



David_L Abonné
Il y a 5 ans

En attendant que ça bouge :
https://www.paragon-software.com/home/linuxfs-windows/&nbsp;


fred42 Abonné
Il y a 5 ans

Est-ce que le sous système Linux fonctionne sous Wine ? <img data-src=" />


crocodudule
Il y a 5 ans






fred42 a écrit :

Est-ce que le sous système Linux fonctionne sous Wine ? <img data-src=" />


<img data-src=" />



Ricard
Il y a 5 ans

Perso, je suis pas fan d’un Windows qui communique directement avec mon Linux (si j’ai un double boot). Juste pour une histoire de sécurité.


esver Abonné
Il y a 5 ans

Sous ce nouveau Windows, pour accéder à nfs il faut passer par l’install d’un wsl ?


Zaxe
Il y a 5 ans






esver a écrit :

Sous ce nouveau Windows, pour accéder à nfs il faut passer par l’install d’un wsl ?


Ho que non et on peut déjà utiliser le montage NFS natif dans Windows (au moins depuis win 2000, pour nt, je ne sais pas pas assez vieille).

https://docs.microsoft.com/fr-fr/windows-server/storage/nfs/deploy-nfs



David_L Abonné
Il y a 5 ans

Il y a un client NFS dans Windows 10 si c’est la question (mais la fonctionnalité est à activer manuellement)


Lutty
Il y a 5 ans

Merci je connaissais pas !


tazvld Abonné
Il y a 5 ans






Ricard a écrit :

Perso, je suis pas fan d’un Windows qui communique directement avec mon Linux (si j’ai un double boot). Juste pour une histoire de sécurité.


C’est le sous-système Linux pour Windows, c’est une sorte de Wine pour Windows qui permet “d’émuler” un linux (même si ce n’est pas techniquement de l’émulation).
Du coup, ton Linux est toujours tranquille dans sa partition ext2/3/4 pour lesquels MS ne semble pas spécialement vouloir chercher à supporter.

(Après il existe des logiciels qui permettent d’accéder à ce genre de partition sur Windows)



Cara62
Il y a 5 ans

Notre IDE est émulé (via un serveur X11) dans notre WSL. Et la stack LAMP dans WSL aussi.


hansi Abonné
Il y a 5 ans

Ils ne maîtrisent déjà pas leur propre OS et leurs propres mises à jour, alors ça rime à quoi ?


D4rkvicious
Il y a 5 ans

je suis pas d’accord mais c’est trop marrant pour être ignoré


revker
Il y a 5 ans

Merci pour vos réponses :)


exmachina Abonné
Il y a 5 ans

Docker le fait, il faut juste lui spécifier un volume persistant contenant ton site, et/ou bdd).
bonus, tu peut tout filer a qui tu veux pour qu’il puisse tester tes sites dans les memes condition


velkuns Abonné
Il y a 5 ans

Je suis utilisateur du sous système Linux depuis plus d’un an maintenant, et c’est un vrai bonheur.

Le plus simple, pour éditer les fichiers:




  • les mettre dans Windows

  • créer d’un lien symbolique dans le sous système Linux via les montages des disques Windows (/mnt/c/ par exemple)

    Le sous système peut les lire sans problème, et ils sont éditables via un IDE sous windows.

    Au boulot et en perso, je ne passe plus que par ça pour du dev en local.
    La seule limitation, c’est qu’il n’est pas possible de changer les permissions (en 0755 par exemple) pour rendre un fichier exécutable sur un véritable linux (le sous système voit les fichiers en 0777 quelque soient les perms réelles)

    Et le seul point noir du sous système Linux, c’est la lenteur du filesystem pour manipuler les fichiers Windows - quelque chose comme 5 fois plus lent, voir plus dans certains cas)


MoonRa
Il y a 5 ans

Tout comme les dinosaures préhistoire partouzeur de droite, je trouve tout ceci un peu contre nature et bâtard. Mais bon ça rend heureux des gens, c’est bien.


revker
Il y a 5 ans

Si je pouvais me débarrasser de Windows pour développer, ça serait évidemment ce que je ferais mais je n’ai pas trop le choix. Ma boite utilise un VPN propriétaire merdique dont la version Linux est boiteuse.


Furanku Abonné
Il y a 5 ans

Je te taquinais ;p
Je me doute qu’il y des impératifs liés au SI. Comme dans beaucoup d’entreprises d’une certaine envergure.


Hugues1337
Il y a 5 ans






Furanku a écrit :

Alors faut changer de boîte ou de DSI <img data-src=" /> <img data-src=" />


Micro-ception ! <img data-src=" />


Ton FUD a deux balles tu peux te le garder hein. En attendant welcome dans ma blacklist.



revker
Il y a 5 ans

Pas de soucis ^^


Winderly Abonné
Il y a 5 ans

Il avait pourtant mis les smilies qui vont bien pour signaler que son propos est pas sérieux. <img data-src=" />


Furanku Abonné
Il y a 5 ans






Hugues1337 a écrit :

Ton FUD a deux balles tu peux te le garder hein. En attendant welcome dans ma blacklist.


La Team 1er degré a encore frappé !




Winderly a écrit :

Il avait pourtant mis les smilies qui vont bien pour signaler que son propos est pas sérieux. <img data-src=" />


Certains ont le talent de ne lire que ce qu’ils ont envie de lire. Comme chantait Brassens : “Quand on est c**, on est c** !” <img data-src=" />



OlivierJ Abonné
Il y a 5 ans






crocodudule a écrit :

Ma question est peut être débile, mais pourquoi microsoft n’intègre pas en natif les systèmes de partition linux (par définition libre) et inversement pourquoi microsoft ne rend pas libre le NTFS ?


Ta question n’est pas débile ; note que le NTFS est parfaitement supporté sous Linux, ça fait bien longtemps (perso je m’en sers pour un disque externe en NTFS, pour la compatibilité occasionnelle). Je ne sais pas si NTFS est libre ou pas, en tous cas on a les specs.

Sinon effectivement c’est idiot de la part de MS, surtout depuis qu’il ne déteste plus Linux, de ne pas intégrer nativement le filesystem ext4 (et ses ancêtres). Dans les années 2000 on trouvait “explore2fs” sous Windows pour accéder, en lecture au moins, aux partitions ext2.



fred42 a écrit :

Est-ce que le sous système Linux fonctionne sous Wine ? <img data-src=" />


<img data-src=" />



teddyalbina Abonné
Il y a 5 ans

Rien ne t’empêche de créer un pilote ext4.


fred42 Abonné
Il y a 5 ans

Bah si : il n’en a pas la compétence.


crocodudule
Il y a 5 ans






fred42 a écrit :

Bah si : il n’en a pas la compétence.


Effectivement mais par contre je veux bien utiliser ses partitions personnelles pour m’entrainer…&nbsp;<img data-src=" />



Kalifourchu
Il y a 5 ans

Perso
j’ai une VM Kali qui route sur chacun de mes ordinateurs sous Windows 10 pour
avoir accès facilement aux outils en ligne de commande comme dig, MTR, nmap,
fierce….

La
première chose que j’essaie sous WLS est ping….. ça ne fonctionne pas…. la
deuxième, nmap….. ça ne fonctionne pas non plus…. et pas plus pour
MTR.

La
nouvelle mouture sous 1903, est-ce que ça va fonctionner ?


Chocolat-du-mendiant Abonné
Il y a 5 ans

Sa question n’est pas débile (loin de là).
Mais sur le même sujet, je ne sais pas si la mienne l’est ?
Pourquoi cela semble si compliqué d’accéder aux fichiers WSL (en tout cas en écriture) alors qu’il n’y a pas de limitation de ce genre avec Wine ?
&nbsp;
Normalement WSL n’a pas besoin de gérer un FS Linux.
Pour moi Wine intercepte les appels système de lectures ou écritures de fichiers pour le FS Windows (NTFS, FAT ou autre, peu importe) et les traduits en appels système de lectures ou écritures vers le FS Linux via le kernel Linux (c’est le kernel qui va vraiment gérer que le FS est un ext4, btrfs, voir même un NTFS. Il y a très longtemps j’utilisais Wine pour des soft sur une partition NTFS partagée avec un Windows multi-boot). Je ne pense pas que pour cet usage Wine ait besoin de savoir écrire sur du ext4, il à juste besoin de traduire des appels systèmes vers d’autres appels systèmes.
Et donc pour moi WSL devrait faire la même chose. Mais dans l’autre sens, appel système lecture/écriture de Linux traduit en appel système lecture/écriture de Windows. Et donc en théorie les fichiers WSL devraient être accessibles sans bidouille particulière (en lecture, comme en écriture). Ce sont des fichiers NTFS comme les autres.
Je ne comprends pas quelle spécificité Linux (ou Windows) rend cela impossible ?
&nbsp;
Sensibilité à la casse, il me semble que NTFS le gère depuis pas mal de temps.
Les droits, … peut-être les droits …un commentaire plus haut semblait indiquer que pour le montage des fichiers Windows dans l’espace WSL, WSL ne s’embêtait pas, hop! tout le monde en 777 <img data-src=" /> (pourtant il y a des droits plus ou moins comparable sur Windows ?)
Mais peut-être que dans l’espace des fichiers WSL, la gestion des droits est plus “fidèle” que pour ce type de montage, et implique de la “bidouille” ? Et que c’est cette “bidouille” qui implique la “bidouille” à base de 9P ?
&nbsp;
Mais sinon, oui! ce serai sympa que MS accepte de vrai montages en natif d’autres FS que les siens. Même s’ils ne développent pas le “pilote”, en tout cas qu’ils ne l’interdisent/bloque pas.
&nbsp;Et qu’ils libèrent exFat. NTFS n’étant plus vraiment un problème sous Linux.