13

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?

21

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.

| improve this answer | |
  • Interesting... I have linux-generic installed and the nls_utf8.ko file exists, but I still get this error. – Hubro Jul 31 '15 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 of ls /lib/modules/$(uname -r)/kernel/fs/nls/nls_utf8.ko? – Rarylson Freitas Aug 1 '15 at 1:28
  • 1
    There was a typo, I had written "utf-8" rather than "utf8" – Hubro Aug 1 '15 at 1:57
6

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!

| improve this answer | |
  • 2
    Since I had the same issue on another kernel version, I did it that way : sudo apt install linux-modules-extra-$(uname -r) – menssana Feb 7 '19 at 19:54
  • Thanx @menssana for good trick making it more generic! – pxlinux Feb 8 '19 at 20:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.