Resolve o netbios-name e passe-o para mount.cifs no script

3

Eu tenho um script que monta todos os compartilhamentos do meu computador com Windows. É basicamente:

mount.cifs //192.168.0.7/pictures ~/otherpc/pictures -o user=me,domain=mynetwork,password=12345,vers=3.0

.. por cerca de 10 linhas.

O problema é que minha rede é DHCP. Então, de vez em quando eu tenho que mudar o IP neste script.

O script costumava funcionar assim:

mount.cifs //OTHERPC/pictures ~/otherpc/pictures -o user=me,domain=mynetwork,password=12345,ver=3.0

Mas, em algum momento, começou a produzir o erro:

mount error: could not resolve address for OTHERPC: Unknown error

O Nautilus resolve o nome sem problemas.

Existe uma maneira de resolver o IP, armazená-lo em uma variável e, em seguida, usar o mount.cifs com a variável // $ em vez do IP diretamente no script?

Obrigado

    
por user659632 18.04.2017 / 06:16

2 respostas

0

Eu vejo duas opções que você deve tentar antes de brincar com o IP em uma variável. (Além disso, a menos que os servidores já tenham um hostname, como você vai descobrir o novo IP?)

  • Tente montar com hostname em vez de IP, se for um IP dinâmico.

    mount.cifs //cifs.server.com/pictures ~/otherpc/pictures -o user=me,domain=mynetwork,password=12345,vers=3.0
    
  • Se a rede estiver sob seu controle, faça reservas DHCP para o IP dos servidores cifs.
por 18.04.2017 / 09:28
0

Eu tive exatamente o mesmo problema depois de um do-release-upgrade para o Ubuntu 18.04.1 LTS. Todas as ações que montaram alegremente antes terminaram com isso feio

mount error: could not resolve address for server.domain.local: Unknown error

nslookup estava resolvendo corretamente, syslog e strace não mostraram nada.

No final, o problema foi o domínio .local junto com uma alteração (possivelmente durante a atualização da versão) no /etc/nsswitch.conf que colocou o daemon mDNS Avahi / Bonjour mdns4_minimal antes da pesquisa do dns.

Então o problema foi resolvido depois que eu mudei o pedido de

hosts:          files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns 

para

hosts:          files dns mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return]

Não me lembro de todos os links úteis, mas este certamente funcionou: link

    
por 21.08.2018 / 13:48