Hoe krijg ik toegang tot CIFS vanaf een Linux machine met SAMBA
Normaal gesproken vertelt het commando je of de verkeerde optie wordt gebruikt, maar soms zijn de fouten niet zo behulpzaam. Dit zijn een paar fouten die ik tegenkwam.
Incorrecte Mount Optie
Dit sprak voor zich. Ten eerste had ik de cifs-utils niet geïnstalleerd. Ten tweede, ik gebruikte de verkeerde commando syntax.
Mount point does not exist
Opnieuw, spreekt voor zich. De directory waarnaar je probeert te mounten moet bestaan.
No such file or directory (when mounting)
Dit betekent dat je het verkeerde export pad op de NFS server hebt opgegeven. Controleer uw junction-paths en probeer het opnieuw.
Host is down
Dit was een lastige fout, omdat het suggereert dat de server niet up was. In sommige gevallen kan dat echt het probleem zijn. Maar in mijn geval was dat niet het geval.
# mount -t cifs -o user=cifsuser \\\\DEMO\\nas /mnt/nasPassword for cifsuser@\DEMO\nas: **********mount error(112): Host is down
Maar in werkelijkheid was het probleem dat ik de SMB versie niet had opgegeven en hij probeerde standaard SMBv1.0 te gebruiken.
Door de SMB versie op te geven (-o vers=3.0) kon dat probleem worden opgelost.
Vereiste sleutel niet beschikbaar
Dit is een Kerberos specifieke fout. In mijn geval bestond de cifs/servername.domain.com SPN niet voor de hostnaam die ik gebruikte in het UNC pad. Dat kun je zien in een packet capture.
Permission denied
Deze foutmelding is zowel in Windows als in Linux in veel gevallen tamelijk nutteloos – vooral omdat het verschillende dingen kan betekenen. Soms is het echt een toegangsprobleem (zoals share of bestandsniveau permissies). Maar tijdens mijn tests kwam ik dit probleem ook tegen toen ik niet-ondersteunde SMB-functies had ingeschakeld op mijn CIFS-server in ONTAP.
# mount -t cifs -o vers=3.0,user=administrator,domain=NTAP.LOCAL //DEMO/nas /mnt/nasPassword for administrator@//DEMO/nas: **********mount error(13): Permission denied
In een packet trace kon ik zien dat de client me vertelde wat hij ondersteunde:
Maar in het antwoord werd het probleem niet echt genoemd. So I made sure to disable the following CIFS/SMB features:
- SMB3 encryption (cifs security modify)
- Large MTU and SMB Multichannel (cifs options modify)
Once I did that, I was able to mount.
# mount -t cifs -o vers=3.0,user=administrator,domain=NTAP.LOCAL //DEMO/nas /mnt/nasPassword for administrator@//DEMO/nas: **********# touch /mnt/nas/smbfile# ls -la /mnt/nastotal 1drwxr-xr-x 2 root root 0 Mar 27 14:36 .drwxr-xr-x. 9 root root 97 Mar 27 10:17 ..-rwxr-xr-x 1 root root 0 Mar 27 14:36 smbfile
For Kerberos, you would just specify sec=krb5.
# mount -t cifs -o sec=krb5,vers=3.0,user=administrator,domain=NTAP.LOCAL //DEMO/nas /mnt/nas