Mapeando uma unidade de rede smbnetfs usando fstab e .smbnetfs.conf

2

Eu quero que um mapeamento de rede esteja disponível para o usuário via smbnetfs na inicialização do sistema sem ter que digitar smbnetfs /media/network todas as vezes, então usei esta entrada em /etc/fstab :

smbnetfs /media/network fuse rw,users,noauto,allow_other 0 0

E funciona, o mapeamento está lá e é montado quando eu clico nele usando qualquer gerenciador de arquivos, mas o problema é que ele irá procurar o arquivo de configuração em /root/.smb/smbnetfs.conf , e o usuário não conseguirá acesse os compartilhamentos do Samba com suas próprias credenciais.

Como posso saber smbnetfs para obter o local correto para o arquivo de configuração do usuário? Não queria alterar o arquivo /root/.smb/smbnetfs.conf porque há usuários diferentes que precisam mapear esse compartilhamento.

    
por vmassuchetto 07.12.2013 / 14:13

2 respostas

1

Na seção Arquivos da página do manual smbnetfs, ele diz:

  

Por favor, crie o diretório de configuração ~ / .smb. Este diretório deve conter pelo menos dois arquivos: smb.conf e smbnetfs.conf. Você pode copiar smb.conf do diretório / etc / samba. Você pode encontrar uma amostra de smbnetfs.conf no diretório / etc.

Se isso funcionar como anunciado, você deve ser capaz de ignorar o arquivo de raiz conf lá.

    
por Ian Robertson 07.03.2014 / 19:18
1

Na verdade, a documentação do smbnetfs informa que ele lê $ {HOME} / .smb para o usuário que emitiu o comando mount e como vmassuchetto está montando o fstab, esse usuário será root.

Existe, no entanto, uma solução: Em /root/.smb/smbnetfs.conf é uma string:

#read auth data from ~/.smb/smbnetfs.auth
include                    "smbnetfs.auth"

Se a memória me servir bem, por padrão, isso deve ser comentado. Se o caminho para smbnetfs.auth não for fornecido, como no exemplo acima, o smbnet fs procurará em ~/.smb/ . Assim, você pode colocar smbnetfs.auth em qualquer lugar no sistema de arquivos e com quaisquer permissões para fornecer ao usuário a maneira de editá-lo. Eu sugeriria vmassuchetto para remover o comentário e criar um arquivo /root/.smb/smbnetfs.auth com conteúdo fluente:

auth USER_NAME "USER_PASSWORD"
auth WORKGROUP USER_NAME "USER_PASSWORD"
auth COMPUTER_NAME USER_NAME "USER_PASSWORD"
auth COMPUTER_NAME/SHARE_NAME USER_NAME "USER_PASSWORD"

A primeira linha instruirá o smbnetfs sobre como lidar com todos os computadores não mencionados especificamente. A segunda linha instruirá o smbnetfs sobre como lidar com todos os computadores do grupo de trabalho e / ou domínio com esse nome. A terceira linha fornecerá credenciais para um computador específico e, por último, para um compartilhamento em um computador específico. Todas as strings devem começar com a palavra auth para credenciais ou com # para comentários. Todos os parâmetros podem ser encapsulados em " para proteger símbolos especiais, da mesma forma que "USER_PASSWORD" no exemplo acima. O parâmetro USER_NAME pode ser especificado com o nome de domínio ou grupo de trabalho principal: DOMAIN_OR_WORKGROUP/USER_NAME

E como último recurso, você sempre pode usar este comando:

cd /media/network/DOMAIN_OR_WORKGROUP:USER_NAME:USER_PASSWORD@COMPUTER_NAME
    
por hash 19.03.2014 / 14:14