Onde está o diretório raiz do sistema de arquivos do Ubuntu no Windows Subsystem para Linux e vice-versa?

300

Instalei o subsistema Ubuntu no Windows 10 (depois de habilitar o recurso nas configurações), mas onde está o diretório raiz do sistema de arquivos do Ubuntu localizado na unidade?

    
por July 21.04.2016 / 12:06

5 respostas

326

Para o Ubuntu instalado a partir do repositório do Windows:

  

Cada distribuição que você instala através da loja é instalada para   diretório appdata do aplicativo. Por exemplo:    C:\Users\<username>\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState - benhillis

Em iterações anteriores do Windows Subsystem para Linux, o sistema de arquivos do Ubuntu estava em %localappdata%\Lxss (por exemplo, C:\Users\Username\AppData\Local\Lxss - substitua o Nome de usuário por seu nome de usuário no Windows). Consulte a postagem no blog da WSL sobre o suporte ao sistema de arquivos :

  

O sistema de arquivos primário usado pelo WSL é o VolFs. Ele é usado para armazenar   Arquivos do sistema Linux, bem como o conteúdo da sua home do Linux   diretório. Como tal, o VolFs suporta a maioria dos recursos do Linux VFS   fornece, incluindo permissões do Linux, links simbólicos, FIFOs, sockets,   e arquivos de dispositivos.

     

O VolFs é usado para montar o diretório raiz do VFS, usando    %LocalAppData%\lxss\rootfs como o armazenamento de apoio. Além disso, um   existem alguns pontos de montagem de VolFs adicionais, mais notavelmente /root e    /home que são montados usando %LocalAppData%\lxss\root e    %LocalAppData%\lxss\home , respectivamente. A razão para estes separar   montagens é que, quando você desinstala o WSL, os diretórios home não são   removido por padrão, portanto, os arquivos pessoais armazenados nele   preservada.

CUIDADO

Criando / modificando quaisquer arquivos dentro do subsistema Linux usando o Windows apps & amp; ferramentas podem causar corrupção de dados e perda de dados no subsistema Ubuntu! (Obrigado a Rich Turner por sugerir estas palavras de precaução!) Isto é absolutamente não suportado. Do mesmo post no blog:

  

Interoperabilidade com o Windows

     

Enquanto arquivos VolFs são armazenados em arquivos regulares no Windows no   diretórios mencionados acima, a interoperabilidade com o Windows não é   suportado. Se um novo arquivo for adicionado a um desses diretórios   Windows, ele não tem os EAs necessários para os VolFs, então os VolFs não sabem o que   fazer com o arquivo e simplesmente o ignora. Muitos editores também   tira os EAs ao salvar um arquivo existente, novamente tornando o arquivo   inutilizável na WSL.

Seu sistema de arquivos do Windows está localizado em /mnt/c no ambiente do shell Bash.

Fonte: blog de Dustin Kirkland , howtogeek

    
por souravc 21.04.2016 / 12:34
45

Isso parece ter mudado desde que o Bash foi introduzido originalmente e não se aplica a distribuições da Windows Store, ou talvez não seja consistente para todos os sistemas, pois meu diretório pessoal está localizado em outro local:

%localappdata%\lxss\home\{username}

ou:

C:\Users\{user}\AppData\Local\lxss\{username}

Onde {user} é seu nome de usuário do Windows e {username} é seu nome de usuário UNIX definido durante a instalação.

O diretório raiz seria:

%localappdata%\lxss

Observe que o diretório raiz pode não estar visível no Windows Explorer no diretório %localappdata% . Você deve ser capaz de acessá-lo de qualquer maneira, digitando-o na 'barra de endereços' do Explorer.

    
por NicholasJohn16 10.08.2016 / 20:35
9

Se você instalar o Linux do MS Market:

eles colocaram distros em:

$ cat /proc/registry/HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Lxss/\{861c29b4-ebe2-49a5-8a22-7e53a27934a0\}/BasePath
C:\Users\user\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState

Distribuição padrão definida por:

bash# cat /proc/registry/HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Lxss/DefaultDistribution
{861c29b4-ebe2-49a5-8a22-7e53a27934a0}

A raiz do Linux é mais profunda:

c:/Users/user/AppData/Local/Packages/46932SUSE.openSUSELeap42.2_022rs5jcyhyac/LocalState/rootfs

PS. Eu usei o Cygwin para explorar as chaves de registro.

PPS. link

    
por gavenkoa 13.09.2017 / 16:54
5

A única coisa que funcionou para mim foi %localappdata%\lxss\home\{username} , em que {username} é o seu nome de usuário BASH que você forneceu durante a instalação. Por algum motivo, após mostrar o lxss da pasta oculta, ele se recusa a aparecer em C:\Users\WINDOWS-USER\AppData\Local\ , e também fornecer o caminho C:\ completo com janelas e nome de usuário BASH também não funciona.

E crie um atalho na área de trabalho para o que funciona.

    
por thinksinbinary 09.06.2017 / 19:02
4

Você pode abrir rapidamente o Bash a partir de uma janela do Gerenciador de arquivos da pasta aberta digitando bash na barra de localização.

É o suficiente.

Além disso, você pode adicionar um item de menu de contexto. Eu pessoalmente não recomendo, se não for necessário, porque adicionar atalhos ao menu de contexto usa mais memória RAM.

link

    
por Kangarooo 21.02.2017 / 21:19