Os arquivos Linux no sistema de arquivos raiz WSL são criados especialmente com permissões POSIX armazenadas em atributos estendidos NTFS. Você pode ver isso executando fsutil file layout lxss\root
e observe o $EA
stream . Se você criar os arquivos diretamente do Windows, vai bagunçar as coisas, porque os aplicativos do win32 não sabem nada sobre o Linux e seus metadados de arquivos
The problem arises when, for example, you use a Windows app/tool to open, create and/or modify a file under your distro root: Since the file was created with a Windows tool, the file won't have any Linux file metadata (e.g. permissions, owner, access/update timestamps, etc.). Thus, to Linux, (which only receives Linux file metadata), the file may be reported as empty, may not even exist, or may have some metadata, but that metadata may not reflect the file's details resulted in the file's contents being corrupted.
Portanto, a MS alertou ousadamente que
DO NOT, under ANY circumstances, create and/or modify Linux files using Windows apps, tools, scripts, consoles, etc.
Creating/changing Linux files from Windows will likely result in data corruption and/or damage your Linux environment requiring you to uninstall & reinstall your distro!
Do not change Linux files using Windows apps and tools
Arquivos que são relevantes apenas para o Linux devem ser criados apenas a partir do WSL. Se você deseja criar arquivos que sejam acessíveis a ambos os sistemas, crie-os fora da raiz da WSL e acesse a WSL por meio do ponto de montagem em /mnt
like /mnt/drive/path
Se você quiser criar arquivos em sistemas de arquivos do Windows, mas manter a sensibilidade ao caso, use
fsutil file setCaseSensitiveInfo <directory name> enable
O sinalizador também pode ser verificado com fsutil file queryCaseSensitiveInfo <directory name>