Pourquoi, lorsque je crée un fichier à partir de Windows par exemple, ne puis-je pas le voir sous le sous-système Linux dans Windows 10 (bash.exe)
La capture d'écran devrait expliquer.
Dossier: OMG a été créé à partir de Windows Explorer. Le dossier OMGBash a été créé avec le sous-système Linux bash.exe
Lorsqu'un dossier ou un fichier est créé en dehors de bash.exe, je ne le vois jamais, quelles que soient les autorisations et la propriété.
Pour afficher les informations que j'ai eu à utiliser avec Cygwin pour afficher les autorisations de fichiers, j'ai également modifié les autorisations pour voir si le dossier apparaîtrait. (Les deux fenêtres de commande en bas)
Capture d'écran montrant les permissions sur les dossiers, les bash.exe et les Cygwin:
J'essaie de déplacer tous mes scripts Cygwin vers le sous-système Linux, mais je n'ai pas envie de recréer tous les fichiers, de devoir copier et coller à l'aide de bash, puis de reformater puis d'utiliser Dos2unix (à très longue vitesse).
Trouvé ceci sur GitHub pour le sous-système Linux:
la copie directement dans le sous-système Linux à partir de Windows n'est pas prise en charge, selon une discussion sur d'autres tickets. Il y a un répertoire quelque part sous AppData (j'oublie où) qui semble contenir les fichiers du système de fichiers WSL. Mais si vous y mettez de nouveaux fichiers ou modifiez des fichiers existants, vos modifications ne sont pas correctement reflétées dans WSL.
Ma meilleure hypothèse est que Linux doit stocker sur ses fichiers différentes métadonnées (et plus d'informations de mise en cache, etc., car son modèle de mise en mémoire tampon du disque) sont similaires à celles de Windows. du système de fichiers Linux dans une base de données, et en utilisant simplement le système de fichiers Windows comme un magasin BLOB pratique pour cette base de données.
Si vous avez vraiment besoin de faire cela, une solution de contournement consisterait à écrire un script drag'n'drop .bat ou à faire en sorte que bash.exe -c "mv% 1 / home / $ USER /". (Vous devrez probablement faire un travail intelligent avec sed et tr, probablement, pour convertir% 1 en un chemin WSL valide.)
Vous pouvez également placer vos fichiers dans un répertoire Windows et, dans WSL, effectuer "cd ~; ln -s / mnt / c / chemin / vers / mes / fichiers" pour les faire apparaître dans votre répertoire homologue WSL?
cp -r --no-preserve=all
supprimer les autorisations précédentes. Néanmoins, si vous souhaitez apporter des modifications importantes, vous ne pouvez pas utiliser une application Windows pour modifier le fichier dans le système de sous-système Linux. Vous devez le modifier dans votre répertoire Windows, puis le copier. Maintenant, je sais que c'est faisable, MAIS j'avais l'impression que le sous-système Linux était plus natif / intégré à Windows qu'un système d'exploitation isolé
%LocalAppData%\Packages\<some-long-name-of-distro>\LocalState\rootfs
.