Um die Antworten von @Ken und @Paul auszufüllen:Die SMB-Version muss angegeben werden, wenn sie höher als v1 ist:
mount -t cifs \
-o username=USERNAME,vers=3.0 \
//server/share \
/mnt/point
Der Linux-cifs-Kernel-Client ist seit 2.5.42 im Kernel enthalten. Das cifs-Protokoll (und verwandte frühere SMB-Dialekte) ist der Standard ("vers=1.0"), aber Unterstützung für neuere Dialekte (SMB2.02, SMB2.1 und SMB3 und SMB3.02) kann durch Angabe von "vers=2.0" oder ausgewählt werden "vers=2.1" oder "vers=3.0" oder "vers=3.02" auf mount.-- https://wiki.samba.org/index.php/LinuxCIFSKernel
Für smbclient ist die Beschwörung -m, --max-protocol=LEVEL
:
smblcient -L server -U username -m SMB2
Ich habe keine Liste der erlaubten Ebenen für smbclient gefunden. Laut Marc Muehlfeld in diesem Thread sind die von Windows verwendeten Versionen:
- SMB 2.0 wurde von Vista/2008 eingeführt
- SMB 2.1 von Win7/2008R2
- SMB 2.2 auch bekannt als 3.0 von Win8/2012
- SMB 3.02 von 8.1/2012R2
Es gibt mehrere verschiedene mount
Fehlermeldungen, die auf nicht übereinstimmende Protokollebene zurückgeführt werden können. Eine nicht vollständige Liste (Sie können die Antwort gerne bearbeiten und weitere hinzufügen):
mount error(13): Permission denied
mount error(95): Operation not supported
mount error(121): Remote I/O error
Schließlich habe ich einige Kommentare gesehen, die auf den oft zitierten Rat hinweisen, die Option sec=ntlmv2
zu verwenden und ähnliches sollte nicht mehr befolgt werden. Es ist also wahrscheinlich eine gute Idee, sec
zumindest nicht zu mischen und anzupassen und vers
.
OK "Ich" habe es herausgefunden - aus irgendeinem Grund funktioniert das Hinzufügen von "vers =3.0". Ich weiß nicht, warum es ohne dieses Problem Probleme gab oder warum es funktioniert. Aber für zukünftige Referenzen, wenn andere dieses Problem mit ihren Freenas-Setups haben.
Ich kämpfe jetzt seit über einem Monat dagegen an. Wenn der Client Xenserver 6.2 und 6.5 ist, kann das ISO-Verzeichnis nicht über CIFS gemountet werden.
Die vers=3.0 hat endlich funktioniert.
Wo hast du diese Option gefunden??!
Meine Domäne ist Windows 2012 R2. Ich habe die Authentifizierungsanforderungen in der Registrierung nicht herabgesetzt - sie sind alle immer noch Standard (ich wollte sie gerade weit öffnen, als ich das fand).
Ich musste überhaupt keine sec=-Einstellung angeben.
Ich musste eine Domäne angeben. Ich habe die Domain in Großbuchstaben angegeben - wird aber möglicherweise nicht benötigt.
Mein Befehl folgt.
mount -t cifs "//192.168.92.25/shared" -o username=administrator,password=<your_password>,domain=<YOUR DOMAIN IN CAPS>,vers=3\.0 /root/tmp
Jetzt erfahren Sie, wie Sie der Authentifizierung Optionen hinzufügen können.
Danke Paul, wer auch immer du bist.