algum especialista do autofs? como fazer com que o autofs e o webdav funcionem juntos?

1
Primeiro, deixe-me dizer que este é um repost de uma pergunta que eu postei no AskUbuntu. Se isso for contra as regras, remova isso. Honestamente, após uma análise mais aprofundada do tópico, percebi que, como o autofs funciona basicamente da mesma forma em várias distribuições, isso era mais uma questão de autofs / linux do que uma questão específica do Ubuntu. É claro que esta é a minha justificativa porque também espero obter mais exposição para essa pergunta: parece que o autofs e o WebDAV são uma combinação incomum, então tenho mais chances de encontrar alguém que tenha feito isso com sucesso se Eu tento neste fórum mais geral.

Estou usando espaços reservados para nomes e pastas reais de servidores. No entanto, tentei torná-los o mais representativos possível dos nomes reais. Por isso, preste atenção às minhas letras maiúsculas e pontuação, caso isso tenha alguma coisa a ver com meu problema.

Estou executando o Ubuntu 16.04 .
Eu instalei autofs e davfs2 .

O comando a seguir é montado com sucesso:

mount -t davfs https://servername.mydomain.com:3333/Shared.Folder /testmount

Ele me pede um nome de usuário e senha, que são [email protected] e myypassword e, em seguida, resulta em uma montagem bem-sucedida.

Isso me diz várias coisas:

  1. Meu servidor WebDAV está funcionando e configurado corretamente.
  2. HTTPS funciona bem.
  3. Minhas credenciais autenticam-se com sucesso.

Então, agora estou tentando fazer isso funcionar com autofs .

Aqui estão meus arquivos:

/etc/auto.master

/Server.mount /etc/auto.Servername.mount

/etc/auto.Servername.mount

storage-folder -fstype=davfs,ro :https://servername.mydomain.com:3333/Shared.Folder

/ etc / davfs2 / segredos

https://servername.mydomain.com:3333/Shared.Folder [email protected] mypassword

Com essa configuração, se eu tentar navegar para /Servername.mount/storage-folder , receberei um No such file or directory error .

Agora, tenho 95% de certeza de que meu problema é um erro de sintaxe ou um erro de autenticação. Não há muitos exemplos a serem encontrados na Web para implementações de autofs baseadas em WebDAV, e alguns deles mostram sintaxes conflitantes. No entanto, tentei tudo o que pude pensar.

Eu acho que é provável que os dois pontos no arquivo auto.Servername.mount estejam estragando a análise, então eu tentei todas as combinações a seguir:

storage-folder -fstype=davfs,ro https://servername.mydomain.com:3333/Shared.Folder
storage-folder -fstype=davfs,ro https\://servername.mydomain.com\:3333/Shared.Folder
storage-folder -fstype=davfs,ro :https\://servername.mydomain.com\:3333/Shared.Folder
storage-folder -fstype=davfs,ro https\://servername.mydomain.com\:3333:/Shared.Folder

Se isso não estiver causando o problema, talvez seja algo relacionado ao arquivo secrets . Então eu também tentei isso para o meu secrets :

/Servername.mount/storage-folder [email protected] mypassword

Como estou acostumado a usar um arquivo de credenciais com montagens autofs baseadas em cifs, também tentei, por diversão, no meu arquivo auto.Servername.mount :

storage-folder -fstype=davfs,ro,credentials=/etc/credentials.Servername.mount https://servername.mydomain.com:3333/Shared.Folder

Em que credentials.Servername.mount era simplesmente:

[email protected]  
Password=mypassword  

Eu também tentei com 'credentials.Servername.mount' como:

https://servername.mydomain.com:3333/Shared.Folder [email protected] mypassword

Nada funciona.

Então, sinto que estou sentindo falta de alguma pequena, mas crucial, sintaxe ou configuração aqui. Eu venho a você desesperado. Qualquer ajuda seria apreciada!

    
por Daniel 05.09.2016 / 18:36

1 resposta

2

Eu consegui trabalhar.

Para referência, aqui está um trabalho autofs com a configuração WebDAV

Instalar os pré-requisitos

$ sudo apt-get install autofs
$ sudo apt-get install davfs2

/etc/auto.master

/Server.mount /etc/auto.Servername.mount

/etc/auto.Servername.mount

storage-folder -fstype=davfs,ro :https\://servername.mydomain.com\:3333/Shared.Folder

Observação: altere "ro" [somente leitura] para "rw" [leitura / gravação], dependendo de suas necessidades.

/ etc / davfs2 / segredos

/Server.mount/storage-folder "[email protected]" "mypassword"

Como consertei:

Eu tive vários problemas.

  1. Eu encontrei um guia "definitivo" para a pergunta de análise de auto.Servername.mount na quarta página de resultados do google: [url] link Assim, você realmente precisa escapar dos outros dois pontos usando uma barra invertida.
  2. Eu tive que ativar o registro detalhado para encontrar meu segundo problema (que era embaraçosamente ruim). Abra /etc/autofs.conf e encontre a linha que diz logging = none . Descomente-o e mude none para verbose . Recarregue o autofs: $ sudo /etc/init.d/autofs reload e verifique se há erros em / var / log / syslog (a localização e o nome do arquivo de log variam de acordo com a distribuição ).
  3. syslog estava me dizendo chave "pasta de armazenamento" não encontrada na (s) fonte (s) do mapa. Agora, para ser justo, meu nome pasta de armazenamento é um pouco longo e complexo. Mas eu tinha verificado e verificado muitas vezes e de novo e de novo eu senti falta de que foi realmente mal escrito por uma letra. Então esse foi o meu segundo problema, em /etc/auto.Servername.mount eu realmente escrevi algo como storage-foldr ao invés de storage-folder , então, obviamente, quando eu estava tentando acessar /Servername.mount/storage-folder ele não estava encontrando nenhuma referência a isso nos arquivos de configuração.
  4. Depois de corrigir isso, o registro em log detalhado me deu a minha próxima ligação, pois agora estava mostrando o erro Não foi possível autenticar para o servidor: rejeitado Desafio básico . Então isso me disse que eu estava agora com um erro de autenticação. Eu abri / etc / davfs2 / secrets e comecei a procurar, e dessa vez eu realmente RTFM porque as respostas estavam na documentação contida no arquivo segredos . Ele explicita exatamente quais caracteres precisam ser escapados com barra invertida, e acontece que o @ em meu nome de usuário não era o problema, mas eu tinha um caractere problemático na minha senha! Acontece que colocar a senha entre aspas é uma maneira alternativa e mais fácil de contornar o problema, e eu coloquei o nome de usuário @ domínio entre aspas também apenas para uma boa medida.

Tudo funciona agora!

    
por 06.09.2016 / 02:11