[linux-cifs-client] "mount error 79 = Can not access a needed shared library"

David Manthey david.manthey at request.com
Tue Apr 7 20:11:59 GMT 2009

Hey all,

I have an old kernel (2.6.7), and when I was trying to mount.cifs a
share that used non-ASCII characters, I was seeing ???? instead of the
correct characters.  A web search showed that other people had this
problem.  The immediate solution was to use "iocharset=utf8", but when I
did this, I received the error:
 mount error 79 = Can not access a needed shared library
, with dmesg showing:
 CIFS VFS: CIFS mount error: iocharset utf8 not found
 CIFS VFS: cifs_mount failed w/return code = -79
Ultimately, this was sending an ELIBACC error.

My web search didn't show the actual solution to this (short of changing
the kernel).  Since I *did* find a solution, I figured I post it here so
that someone else with this problem would be less confounded by it.

Specifically, I was missing the nls_utf8.ko kernel module.  Sicne I only
had nls_cp437.ko and nls_iso8859-1.ko modules installed, any iocharset=
other than =cp437 and =iso8859-1 would result in the error 79.

I was able to compile nls_cp437.ko (it was an unselected option in my
original kernel build), place it
in /lib/modules/(kernel)/kernel/fs/nls/, run depmod and modprobe, and
then, voila, iocharset=utf8 works AND I can properly see my non-ASCII

Thanks to everyone who works on samba and cifs.

- David
David Manthey, programmer
ReQuest, Inc.

More information about the linux-cifs-client mailing list