Il montaggio dell'unità cifs fornisce: errore di montaggio (22): argomento non valido


44

Sto cercando di eseguire:

sudo mount -t cifs //user.my-backup.com /mnt/wal_drive -o iocharset=utf8,rw,credentials=/etc/backupcredentials.txt,uid=postgres,gid=postgres,file_mode=0660,dir_mode=0770

Tuttavia continuo a ricevere il seguente errore:

mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

Che cosa sto facendo di sbagliato?


1
Due possibili problemi: la tua fonte è un URL che potrebbe non essere risolto o che non sta pubblicizzando Samba; e, l'uid / gid deve essere espresso numericamente. Hai letto la manpagina di riferimento ?
Douggro,

3
Mount dovrebbe davvero restituire un messaggio di errore migliore. Sapere quale argomento non è valido renderebbe questo messaggio di errore molto più utile.
Gregory Arenius,

1
Il montaggio genera un errore generico perché i dettagli sono nel registro. Come si dice sotto, usa tail -f /var/log/kern.log per capire cosa sta succedendo.
Sam,

1
dmesg | tailti dice qualcosa in più su quale opzione ti sta dando problemi.
HongboZhu,

Risposte:


63

forse questo aiuta con questo, mount error(22): Invalid argument... possibile errore è l'argomento / i (modalità) sul comando mount.

  1. controlla i tuoi log sugli errori riscontrati.

    tail -f  /var/log/kern.log 
    
  2. rimuove l'argomento non valido


9
Questo ha funzionato per me. Ho trovato l'errore CIFS not working, kernel upgrade:No dialect specified on mounte l'ho risolto [aggiungendo] vers=1.0al mio / etc / fstab ( bbs.archlinux.org/viewtopic.php?id=230952 ). Sospetto che sia causato dall'uso del kernel 4.13.
Bla

Accidenti, meno male per StackOverflow. Lo stesso problema su Ubuntu. Ho aggiunto vers = 2.0 e funziona. L'attuale mount.cifs è a 6.4. Probabilmente alcuni miglioramenti alle credenziali ma non scavare in CIFS ora ...
dturvene

6

Ho avuto lo stesso problema su Arch Linux, con questo messaggio nel registro:

kernel: CIFS VFS: cifs_mount failed w/return code = -22

Per me la soluzione era specificare la versione precedente di cifs (di default era 3.0):

/etc/fstab:

//my-router/share /media/share cifs ver="2.1",rw,soft,uid=ele,gid=ele,file_mode=0770,dir_mode=0770,credentials=/etc/router-credentials.conf 0 0

3

Un'altra possibile causa è la presenza di sec=ntlmin /etc/fstabed è incompatibilità con i nuovi protocolli SMB come SMB3.

Anche se non è il caso dell'OP, ciò può anche causare mount error(22): Invalid argumenterrori, come ha fatto per me dopo l'aggiornamento di un vecchio server.

Anche se kern.loginclude un suggerimento specify vers=1.0 on mount, potrebbe essere più sicuro rimuoverlo o modificarlo sec=ntlm. Forse utilizzare le impostazioni predefinite per consentire la negoziazione automatica della versione e della sicurezza SMB o specificare opzioni compatibili come vers=3.0,sec=ntlmssp.

Ovviamente questo dipende dalle funzionalità del tuo server SMB, ma proverei a evitarlo vers=1.0se non fosse necessario.


2

Stavo usando un URL sbagliato. Sarebbe dovuto essere://user.my-backup.com/backup


2

Nel mio caso, questo problema è stato causato perché avevo montato una directory piena di collegamenti simbolici. Dopo aver studiato i collegamenti simbolici in Windows, ho ottenuto i loro percorsi "reali" e li ho montati invece.


2

È possibile aggiungere le informazioni sulla versione per SMB per risolvere il problema. Quello che ho fatto è che ho aggiunto vers = 1.0. Questa è la versione SMB 1 che funziona con tutti i driver smb. Nel tuo caso sembrerà qualcosa del genere

sudo mount -t cifs //user.my-backup.com /mnt/wal_drive -o iocharset=utf8,rw,vers=1.0,credentials=/etc/backupcredentials.txt,uid=postgres,gid=postgre ,file_mode=0660,dir_mode=0770

1

Dopo l'aggiornamento a Jessie Debian il pacchetto deve essere cambiato. Ho rimosso guid=0dal seguente fstabsupporto e tutto ha funzionato di nuovo correttamente.

//x.x.x.x/General/  /usr/local/share/general cifs uid=0,guid=0,rw,credentials=/etc/gen-cifspasswd 0 0
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.