Eu tenho uma unidade de samba que está montada no meu computador Windows local.
Eu tenho uma unidade "/ mnt / c" no WLS ("Windows 10 bash"), mas não "/ mnt / z".
Existe uma maneira de acessá-lo de alguma forma? Posso remontar no WLS?
Eu tenho uma unidade de samba que está montada no meu computador Windows local.
Eu tenho uma unidade "/ mnt / c" no WLS ("Windows 10 bash"), mas não "/ mnt / z".
Existe uma maneira de acessá-lo de alguma forma? Posso remontar no WLS?
Respostas:
[Atualização - aparentemente esse recurso está disponível na compilação 16176 . Ainda não tentei.]
Não, embora possa haver algum truque que não descobri. O Subsistema Windows para Linux não monta unidades de rede. Um funcionário da Microsoft diz aqui (em um comentário):
Neste momento, apenas "montamos" unidades fixas. As unidades USB / removíveis / de rede não são manipuladas no momento. Esse recurso está em nosso backlog, mas não está nos cartões tão cedo.
Então não prenda a respiração.
Tentei contornar isso usando um link simbólico, como este:
c:> mklink /d c:\some\directory \\some_server\some_share
O link funciona perfeitamente no Windows "normal" (cmd.exe, PowerShell, gerenciador de arquivos etc.), mas é invisível para o WSL:
$ ls -ld /mnt/c/some/directory
/mnt/c/some/directory not found
Para meu próprio uso, essa limitação é uma barreira. Tenho coisas nas unidades de rede que não estou disposto a mudar. Existem alternativas; Estou usando o Cygwin.
linkname target
, nãotarget linkname
Montagem de DrvFs
Para montar uma unidade do Windows usando DrvFs, você pode usar o comando regular mount do Linux. Por exemplo, para montar um diretório removível da unidade D: as / mnt / d, execute os seguintes comandos:
$ sudo mkdir /mnt/d $ sudo mount -t drvfs D: /mnt/d
Agora, você poderá acessar os arquivos da sua unidade D: em / mnt / d. Quando você deseja desmontar a unidade, por exemplo, para removê-la com segurança, execute o seguinte comando:
$ sudo umount /mnt/d
Montagem de locais de rede
Quando você deseja montar um local de rede, é claro que você pode criar uma unidade de rede mapeada no Windows e montá-la como indicado acima. No entanto, também é possível montá-los diretamente usando um caminho UNC:
$ sudo mkdir /mnt/share $ sudo mount -t drvfs '\\server\share' /mnt/share
Observe as aspas simples ao redor do caminho UNC; estes são necessários para evitar a necessidade de escapar das barras invertidas. Se você não colocar o caminho UNC entre aspas simples, precisará escapar das barras invertidas dobrando-as (por exemplo
\\\\server\\share
).O WSL não tem como especificar quais credenciais usar para se conectar a um compartilhamento de rede. Se você precisar usar credenciais diferentes para se conectar ao servidor, especifique-as no Windows, navegando até o compartilhamento no File Explorer, usando o Gerenciador de Credenciais do Windows ou o comando net use. O comando net use pode ser chamado de dentro do WSL (usando o uso net.exe) por meio de interoperabilidade. Digite net.exe help use para obter mais informações sobre como usar este comando.
-o
) me dá o erro "tipo incorreto de fs, opção ruim, superbloco ruim".
consulte https://github.com/Microsoft/WSL/issues/2999#issuecomment-455835951
Aqui está uma maneira de montar o GFS no WSL com base em Como o `sshfs` trabalha na WSL ou em encontrar uma alternativa O truque é usar https://www.nsoftware.com/sftp/netdrive/ para ssh no GFS do Windows e convertê-lo para um sistema de arquivos que pode ser montado no WSL.
Instale o OpenSSH Server em Win10 Win10 Configurações -> Aplicativos -> Gerenciar recursos opcionais -> Adicionar recurso -> Reinicie o Servidor OpenSSH, se necessário, abra Serviços -> OpenSSH -> Propriedades -> Tipo de inicialização -> Automático (atrasado)
Instale e execute o SFTPNetDrive, clique com o botão direito do mouse no ícone nos ícones ocultos -> Janela principal (ou talvez já esteja aberta) -> Perfil -> novo perfil (servidor: localhost, usuário: * pwd: * Letra da unidade: F (ou outro) Avançado - > (Protocolo -> desmarque a compactação; pasta especificada: G: \))
no Bash (wsl): sudo mkdir / mnt / f; sudo mount -t drvfs F: / mnt / f
Não tenho certeza de quão estável é, mas consegui abrir arquivos na WSL.
Existem (pelo menos) duas maneiras de usar o Bash no Windows:
O Git-Bash tem acesso às pastas da rede (instale o git-bash> vá para a pasta da rede> clique com o botão direito do mouse> "Git Bash Here"> execute pwd
para ver o caminho).
Se você precisar usar a versão WLS do bash, poderá chamar o Git-Bash a partir do WLS bash da seguinte maneira:
WLS_Bash_Shell:$ /mnt/c/Program\ Files/Git/bin/bash.exe ScriptThatUsesNetworkFolders.sh