Por que o mount.cifs não está mais funcionando no fstab após a atualização do 16.04 para o 18.04?

10

Meu fstab para conectar-se a um NAS local sempre foi

//192.168.111.112/RAID /home/moi/share/OMV cifs noauto,users,username=USERNAME,passwd=PASSWORD

Após atualizar meu sistema do Lubuntu 16.04 para 18.04, isso não funcionou mais, fornecendo a mensagem de erro:

Failed to query password: Permission denied
Password for USER@//192.168.111.112/RAID: mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
Ben
fonte

Respostas:

9

O que funcionou para mim foi adicionar vers = 1.0 às opções no fstab em combinação com alterar a opção de senha de passwd para password :

//192.168.111.112/RAID /home/moi/share/OMV cifs  vers=1.0,noauto,users,username=USERNAME,password=PASSWORD

Isso ajudou a encontrar um log de erros:

tail -f  /var/log/kern.log 

Gostaria muito de receber mais informações.


EDIT: setembro 2019

Hoje percebi que usersnão é mais um argumento válido do mount cifscomando. Além disso, vers=1.0deve ser o padrão, de acordo com man mount.cifs.

Ben
fonte
2

Estou lutando com isso há alguns dias, consegui acessar compartilhamentos de samba em um sistema de desktop ubuntu 16.04 com minha nova instalação do lubuntu 18.04 usando smb4k, mas não no fstab. Eu usei alguns dos parâmetros listados por 'mount' depois de montar um compartilhamento usando o smb4k. O que eu descobri foi credentials=/etc/samba/auth.myserver.meque não funcionou como no ubuntu 16.04. A seguinte sintaxe permitiria uma montagem:

//192.168.10.66/servershare     /mnt/localdir       cifs  rw,vers=1.0,sec=ntlmssp,username=USER,password=PASSWORD,domain=YOURDOMAIN,uid=LOCALUSER,gid=LOCALUSER,posixpaths,mapposix,acl     0   0

O que eu não sei é qual das opções acima é necessária. Use seus próprios valores para USER, PASSWORD e YOURDOMAIN.

Sempre que eu usava o credentials=/etc/samba/auth.myserver.me, eu sempre recebia uma mensagem 'Permissão negada'. Aparentemente, o ubuntu 18.04 não está acessando corretamente o arquivo de credenciais listado em fstabou a sintaxe foi alterada.

Você pode ter que experimentar o uid e o gid. Normalmente, logon apenas como um usuário específico, que estou chamando LOCALUSER, o grupo padrão para esse logon também seria LOCALUSER.

jpage
fonte
Eu tive o mesmo problema e nenhuma das outras soluções (como "vers = 1.0") funcionou para mim. Por fim, pude montar nossos compartilhamentos apenas adicionando a domain=opção (mesmo usando o arquivo de credenciais como antes ...).
bitifet 8/01/19
1

Ben deu a resposta:

O que funcionou para mim foi adicionar vers = 1.0 às opções no fstab

Ao tentar fazer um mount.cifs usando um recurso SMB1, você recebe esse tipo de mensagem no log do kernel:

$ journalctl | grep CIFS

Sep 04 14:57:22 nfsbonos kernel: No dialect specified on mount. Default has changed to a more secure dialect, SMB2.1 or later (e.g. SMB3), from CIFS (SMB1). To use the less secure SMB1 dialect to access old servers which do not support SMB3 (or SMB2.1) specify vers=1.0 on mount.
Sep 04 14:57:23 nfsbonos kernel: CIFS VFS: cifs_mount failed w/return code = -112

Portanto, tentar o mount.cifs usando a opção vers = 1.0 deve corrigi-lo:

$ mount.cifs /\/\$IP_of_RESOURCE_CIFS/\folder /mnt/folder -o vers=1.0,credentials=/root/.smbcredentials

e no fstab, basta colocar no início das opções "vers = 1.0" (após cifs).

Muito, muito obrigado, Ben.

Perkolator
fonte
1
Duplicado de askubuntu.com/a/1032238/790920
abu_bua
1

Ao atualizar para o Ubuntu 18.04, nossos scripts de montagem cifs também falharam, estas foram as seguintes correções necessárias:

  • userNão useusername
  • passNão usepassword
  • domNão usedomain
  • Usar vers=1.0
  • Use barras invertidas e \não barras /no UNC
  • Quando invocado no bash, os scripts escapam das barras invertidas, ou seja, em \\vez de \.

Aqui está um comando de montagem de amostra em um script:

#!/bin/bash

REMOTEHOST=contoso
REMOTEFOLDER=share
MOUNTDIR=/mnt/share
MOUNTUSER=billgates
MOUNTPASS=secret
MOUNTDOM=microsoft

sudo mount -t cifs \\\\${REMOTEHOST}\\${REMOTEFOLDER} ${MOUNTDIR} -o vers=1.0,user=${MOUNTUSER},pass=${MOUNTPASS},dom=${MOUNTDOM}

Aqui está a linha de montagem de amostra em /etc/fstab:

# /etc/fstab
\\contoso\share /mnt/share cifs vers=1.0,user=billgates,pass=secret,dom=microsoft

No entanto, se você estiver usando um arquivo de credenciais, você precisa usar username, passworde domaincomo segue:

# /etc/fstab
\\contoso\share /mnt/share cifs vers=1.0,credentials=/root/.smb
# /root/.smb
username=billgates
password=secret
domain=microsoft
Stephen Quan
fonte
0

Minha entrada testada e verdadeira do fstab para montar uma unidade USB conectada a um roteador TP-Link parou de funcionar após uma atualização do Ubuntu / Mint. Adicionando vers = 1.0 foi corrigido. Minha entrada do fstab é exatamente como abaixo:

//192.168.0.1/volume9 / home / don / RemoteMedia / NAS_USB cifs vers = 1.0, guest, uid = 1000 0 0

volume9 e sua localização é a partição do disco, conforme identificado pela página de administração do roteador. Mídia remota é uma pasta que eu criei no meu diretório pessoal "don". Certifique-se de alterar as permissões deste diretório para que o usuário conectado possa acessar sem privilégios de root. NAS_USB é apenas um nome que escolhi que aparecerá na minha pasta Remote Media, uma vez montada, contendo o conteúdo "vinculado" do volume9. Outras respostas que encontrei tinham senhas etc. no exemplo. Esta unidade USB aparece como um simples compartilhamento do Windows e é um fstab simples para suportar a montagem do disco automaticamente na inicialização, para que seja possível um backup automatizado na unidade de rede.

Espero que isso ajude.

Donald Link
fonte