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

7

Eu baixei o BASH para o Windows 10. Como eu navegaria para um endereço de rede como faria em um ambiente Windows? Eu 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 novato na BASH e vejo isso como uma oportunidade para ser mais eficiente.

Como um bônus, por favor, mostre como eu poderia realizar algumas tarefas comuns, como copiar arquivos através de uma rede, e também como autenticar, pois isso provavelmente seria necessário para tais operações.

    
por David Prentice 29.03.2017 / 02:38

1 resposta

7

Na última versão do Windows "Atualização dos criadores de outono" é possível montar caminhos UNC, ou qualquer outro sistema de arquivos que o Windows possa acessar, de dentro do WSL .

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

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

As aspas simples são úteis ao redor do caminho UNC para que você não tenha que escapar das barras invertidas. Você pode montar em um diretório arbitrário; Eu usei /mnt/share como exemplo aqui, mas qualquer diretório vazio serve.

Todos os arquivos serão exibidos com permissões completas de a+rwx 777 . Os direitos de acesso reais serão verificados quando você tentar acessar um arquivo, e você poderá obter um erro nesse ponto, mesmo se parecer que a operação deve ser bem-sucedida. 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 Gerenciador de Arquivos do Windows e faça a autenticação. A WSL herdará suas credenciais e permissões. Esta é a maneira mais fácil para um one-off.
  2. Use o comando net use de um prompt do cmd ou net.exe use de dentro do WSL ( cd /mnt/c primeiro para suprimir um aviso). Você precisará de algo como net.exe use \server\share <PASSWORD> /USER:<USERNAME> . Você pode usar '*' para a senha a ser solicitada. Outras configurações são mostradas com net.exe help use .
  3. Use o Windows Credential Manager para configurar uma credencial armazenada. Eu nunca fiz isso.

Eu entendo que o Samba propriamente dito pode funcionar sob o 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 ao estilo FTP a servidores SMB e para recuperar / colocar arquivos individuais, e deve funcionar quando configurado apropriadamente como de costume.

    
por 06.09.2017 / 11:32