Como posso acessar caminhos UNC usando o Windows Subsystem for Linux?

16

Baixei o BASH para Windows 10. Como navegaria para um endereço de rede como faria em um ambiente Windows? Vi o SAMBA mencionado e baixei o smbclient .

Eu tentei:

smbclient \\localhost\

Eu recebo o erro

ERROR: Could not determine network interfaces, you must use a interfaces config file

Eu sou um usuário iniciante do BASH e vejo isso como uma oportunidade de ser mais eficiente.

Como bônus, mostre como eu poderia realizar algumas tarefas comuns, como copiar arquivos em uma rede, e como autenticar, pois isso provavelmente seria necessário para essas operações.

David Prentice
fonte

Respostas:

22

Na versão mais recente do Windows, "Fall Creators Update" , é possível montar caminhos UNC, ou qualquer outro sistema de arquivos que o Windows possa acessar, a partir da WSL .

Você pode fazer isso com o mountcomando como de costume, com o sistema de arquivos " drvfs" fornecido pelo WSL:

sudo mount -t drvfs '\\server\share' /mnt/share

Aspas simples são úteis no caminho UNC, para que você não precise escapar das barras invertidas. Você pode montar em um diretório arbitrário; Eu usei /mnt/sharecomo exemplo aqui, mas qualquer diretório vazio serve .

Todos os arquivos serão exibidos com a+rwx 777permissões completas . Os direitos reais de acesso serão verificados quando você tentar acessar um arquivo, e você poderá receber um erro nesse ponto, mesmo que pareça que a operação tenha êxito. Todo arquivo legível será tratado como executável.


Para locais que exigem credenciais, você tem três opções:

  1. Antes da montagem, navegue até o local usando o File Explorer do Windows e autentique. A WSL herdará suas credenciais e permissões. Esta é a maneira mais fácil de fazer uma única vez.
  2. Use o net usecomando em um prompt do cmd ou net.exe usedentro da WSL ( cd /mnt/cprimeiro para suprimir um aviso). Você precisará de algo parecido net.exe use \\server\share <PASSWORD> /USER:<USERNAME>. Você pode usar '*'para que a senha seja solicitada. Outras configurações são mostradas com net.exe help use.
  3. Use o Gerenciador de credenciais do Windows para configurar uma credencial armazenada. Eu nunca fiz este.

Entendo que o Samba propriamente dito também pode funcionar sob WSL, mas, como o host fornece a mesma funcionalidade, eu usaria a versão interna do Windows quando estiver disponível. smbclienté principalmente para acesso no estilo FTP a servidores SMB e recuperação / colocação de arquivos individuais, e deve funcionar quando configurado adequadamente, como de costume.

Michael Homer
fonte