Sobre o sistema de arquivos montado em /mnt/c
- What exactly is /mnt/c/Users/ compared with C:\Users\? It seems they are one in the same---so what is /mnt/c/?
Em contraste com o Windows, o Linux (e os outros sistemas baseados no Unix) usam uma única estrutura de pastas, independente do número de discos que você possui. Se você tiver vários discos, todos esses discos devem ser montados na estrutura de pastas em algum momento.
- Normalmente, todos os discos (diferentes dos usados para inicializar o sistema) são montados em uma pasta chamada
/mnt
ou /media
O WSL tem um tipo especial de sistema de arquivos chamado DrvFS que dá acesso aos discos usados nas janelas. Você pode usar o DrvFS para montar, não apenas o sistema de arquivos do Windows, mas também os discos de rede e outros tipos de mídia.
- No WSL, por padrão, o disco
C:
nas janelas é montado em /mnt/c
- Se você tiver outro disco, por exemplo, um disco
D:
no Windows, ele será montado em /mnt/d
Os arquivos que você pode ver em /mnt/c
são os mesmos que você tem em C:
. Se você modificar algum arquivo, também obterá as alterações nas janelas.
Você pode usar o comando mount
para acessar outros tipos de mídia (por exemplo, unidades removíveis ou compartilhamentos de rede).
Sobre a localização de /home/<username>
- How can I view the files in /home/ using the Windows File Explorer? Not that I'd really ever want to---I'm just trying to get a feel for how Windows is organizing this Subsystem for Linux thing.
No WSL, todo o sistema de arquivos linux está localizado em uma pasta do Windows. A localização da pasta depende da versão do Windows e da distribuição do WSL que você está usando.
-
Versões iniciais do WSL armazenam o sistema de arquivos linux em
%LOCALAPPDATA%\Lxss\rootfs
-
As distribuições WSL instaladas na Windows Store , começando no Windows Build 16215 (meados de 2017), usam uma pasta como
%LOCALAPPDATA%\Packages\...\LocalState\rootfs
. O nome do pacote varia dependendo da distribuição (por exemplo, é diferente para o Ubuntu do que para o Debian)
-
Distribuições Linux instaladas usando outras ferramentas , como lxRunOffline ou O WSL-DistroLauncher pode armazenar o sistema de arquivos linux em qualquer local.
Você pode verificar muitas opções para saber a localização da pasta WSL . Por exemplo, eu acho que a opção mais fácil é usar lxRunOffline para saber a pasta de instalação.
## You can use lxrunoffline to check which WSL distributions have installed
## using: lxrunoffline list
C:\> lxrunoffline list
backup
Ubuntu-18.04
## And you can use it to get the location of any of these WSL installations
## using: lxrunoffline get-dir -n <name of distribution>
C:\> lxrunoffline get-dir -n backup
c:\wsl\installed\backup
C:\> lxrunoffline get-dir -n Ubuntu
C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState
Depois que você souber o local da pasta de instalação, o /home/<username>
estará abaixo de <installation folder>\rootfs\home\username
.
- Por exemplo, se sua pasta de instalação for
c:\wsl\ubuntu
- o
/home/<username>
está em c:\wsl\ubuntu\rootfs\home\username
NOTA: O Linux e o Windows armazenam permissões de arquivo de diferentes maneiras. Atualmente, o WSL DrvFS armazena as permissões do Linux como Streams (metadados) anexados aos arquivos que você pode ver no Windows. A Microsoft não recomenda modificar arquivos do Linux usando programas do Windows. É possível que alguns aplicativos do Windows danificar as permissões do Linux sem aviso prévio.