When I try to mount a cifs share with option iocharset=utf8 I receive the error: mount error 79 = Can not access a needed shared library. What shared library am I missing?
2 Answers
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.
-
Interesting... I have
linux-generic
installed and thenls_utf8.ko
file exists, but I still get this error.– HubroJul 31, 2015 at 23:19 -
Hi @Hubro, did you have any message like "CIFS VFS: CIFS mount error: iocharset utf8 not found" at your
dmesg
output? And what is the output ofls /lib/modules/$(uname -r)/kernel/fs/nls/nls_utf8.ko
? Aug 1, 2015 at 1:28 -
1
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!
-
3Since I had the same issue on another kernel version, I did it that way :
sudo apt install linux-modules-extra-$(uname -r)
– MensSanaFeb 7, 2019 at 19:54 -