Unable to mount cifs with iocharset=utf8
Probably, your Kernel doesn't contain the nls_utf8.ko
module.
If it's your case, you will see similar entries in your dmesg
output:
[ 612.598233] CIFS VFS: CIFS mount error: iocharset utf8 not found
[ 612.598547] CIFS VFS: cifs_mount failed w/return code = -79
To confirm it, you can try to find the nls_utf8.ko
module:
ls /lib/modules/$(uname -r)/kernel/fs/nls/nls_utf8.ko
To fix, install a kernel witch contains this module, like linux-generic
or linux-image-extra-virtual
.
In my case (Ubuntu 14.04), the solution was:
apt install linux-generic
reboot
In newer Ubuntu versions, maybe you will need one of the linux-modules-extra
kernel packages (tks @pxlinux). For example, if your current kernel is linux-generic
:
apt install linux-modules-extra-$(uname -r)-generic
reboot
More info can be found at this answer at superuser and at this bug report at Launchpad.
When dmesg
complains like this:
CIFS VFS: CIFS mount error: iocharset utf8 not found
Let me slightly update the information for Ubuntu 16.04
When the package below is not installed only NLS for ISO_8859-1 is present
ls /lib/modules/$(uname -r)/kernel/fs/nls/
after installation of the extra kernel modules by
sudo apt install linux-modules-extra-$(uname -r)
also the UTF-8 is there.
Thanks for the hint above!