Acessando uma pasta compartilhada do Windows no Linux?

13

Estou tentando copiar um arquivo (.html) de uma pasta compartilhada do Windows XP Professional em um servidor executando o Ubuntu Linux 10.04 LTS.

Como é uma pasta compartilhada, o 'wget' usual não parece funcionar. Eu suspeito que estou usando o estilo de endereço errado completamente.

Eu tentei:

  1. http://192.168.1.66/SharedFolder/Data.html
  2. //192.168.1.66/SharedFolder/Data.html
  3. smb: //192.168.1.66/SharedFolder/Data.html
  4. //192.168.1.66/SharedFolder/Data.html
  5. 192.168.1.66/SharedFolder/Data.html

Gostaria de saber se isso é possível e se for, alguém poderia me dar algumas dicas?

Fiz ping com sucesso da caixa do Windows no Ubuntu:

# ping 192.168.1.66
PING 192.168.1.66 (192.168.1.66) 56(84) bytes of data.
64 bytes from 192.168.1.66: icmp_seq=1 ttl=128 time=0.412 ms
64 bytes from 192.168.1.66: icmp_seq=1 ttl=128 time=0.557 ms (DUP!)
64 bytes from 192.168.1.66: icmp_seq=2 ttl=128 time=0.243 ms
64 bytes from 192.168.1.66: icmp_seq=3 ttl=128 time=0.251 ms
64 bytes from 192.168.1.66: icmp_seq=4 ttl=128 time=0.266 ms

e eu posso acessar o compartilhamento do Windows de qualquer outro computador da rede, no entanto, todos eles estão executando o Windows XP Professional também. Não tenho certeza se é um problema entre os compartilhamentos Ubuntu e Windows em geral ou apenas se meu estilo de URL está errado.

dannymcc
fonte

Respostas:

20

Se você deseja usar a GUI, tente clicar Places -> Connect to Server.... Para Service Typeescolher Windows share, preencha os campos da seguinte forma:

Server: 192.168.1.66
Share: SharedFolder

Em seguida, baixe seu arquivo da janela. Se você quiser usar uma interface de linha de comando, smbclientusa um FTP-como interface ( get, put, etc.):

~$ smbclient //192.168.1.66/SharedFolder
Password:
smb: \> get Data.html

Como alternativa, você pode montar o compartilhamento como um sistema de arquivos CIFS: (Primeiro, verifique se o cifs-utils está instalado)

~$ sudo mount -t cifs //192.168.1.66/SharedFolder /mnt

Se o seu compartilhamento exigir autenticação, forneça o nome de usuário smbclientcom a -Uopção ou mountcom-o user=username

bonsaiviking
fonte
1
A opção smbclient funcionou bem, existe alguma maneira de criar scripts para isso? Preciso pegar o arquivo a cada minuto ou mais. Posso apenas usar um script bash com o comando smbclient e, em seguida, minha senha root, seguida por get Data.html? Ah, e sair para sair do smbclient?
Dannymcc
6
Armazenar sua senha em qualquer lugar é uma má idéia. No entanto, se você quiser, poderá fazer smbclient -A authfile //IP/Share -c 'get Data.html'e ter suas credenciais armazenadas em um arquivo com permissões somente de raiz ( chmod 600). Veja a página de manual para obter detalhes sobre-A
bonsaiviking