3.0.1rc2 profile/unicode failures

Alexander Bokovoy a.bokovoy at sam-solutions.net
Fri Dec 12 14:39:43 GMT 2003

On Fri, Dec 12, 2003 at 09:18:49AM -0500, James M Moya wrote:
> After upgrading our test server from samba v2.2.8a to 3.0.1rc2 most
> profiles would fail to load after authenticating. The error was mostly
> refering to the "3 1/2 Floppy (A:).lnk" file. There were others however,
> the Office "Recent" folder seemed to be popular as well. All were of the
> form:
> Windows cannot copy file
> \\pier\profile\pchome\.pcprefs\Profile\SendTo\3???????? to
> location C:\Documents and Settings\tjmadm\SendTo\3????????.
> Possible causes of this error include network problems or insufficient
> security rights. If this problem persists, contact your network 
> administrator.
First and most important question: which encoding is used to store
filenames? I would assume that you already had that data (including files
with 1/2 signs) before installing 3.0.1rc2. Also, I can suppose from your
description that they are stored most probably as ISO-8859-1. Am I right?

> It seems to be a UTF8 issue. I installed libiconv v1.9.1 just so
> samba3.0.1rc2 would install without complaining (This is Solaris 8). I
> later tried v1.8 with the same result. I have some 19,000 accounts over
> 6TB of disk space that samba serves up so this would be a sizable issue
> before we could deploy. Is this is know problem? What are the "fixes" if
> any. Here would be a "normal" smb.conf, fairly generic:
> [global]
>         workgroup = XXX
>         log level = 1
>         deadtime = 10
>         socket options = TCP_NODELAY IPTOS_LOWDELAY
>         printcap name = /etc/lp/smb_printerlist
>         local master = No
>         wins server = x.x.x.x
>         remote announce = x.x.x.x
>         remote browse sync = x.x.x.x
Here it means that you're using Samba 3.0 defaults for character sets:
	unix charset = UTF-8 (as opposed to ISO-8859-1 in 2.2 series)
	dos charset = CP850

With 3.0.1RC2 you can set 'unix charset = ISO-8859-1' -- if that is your
correct unix charset for file names. You don't need to have iconv
installed for this as we support ISO-8859-1 internally now.

For CP850 you have to either use iconv(3) (libiconv, for example) or load our
charset module CP850 -- this is done automatically by Samba using
following preference table:

  highest -- if Samba charset module is loaded through 'preload modules'
	     option or provided internally by Samba
  medium  -- if charset is provided by native iconv(3) support
  low     -- if Samba charset module specified in one of charset options
  	     ('unix charset', 'dos charset', 'display charset') and
	     corresponding file exists in $libdir/samba/charset/.

If you have installed Samba in default configuration,
$libdir/samba/charset/ contains CP850 and CP437 modules. ASCII, UTF8, and
ISO-8859-1 now are supported internally. It should cover default
installations for Latin1-oriented sites.
/ Alexander Bokovoy
Samba Team                      http://www.samba.org/
ALT Linux Team                  http://www.altlinux.org/
Midgard Project Ry              http://www.midgard-project.org/

More information about the samba-technical mailing list