[Samba] Blank ctime or mtime causes on files in profile

Danny Paul jdpaul at gocolumbiamo.com
Wed Jul 13 15:10:16 GMT 2005


I have Samba 3.0.9 running on SuSE 9.2, 2.6.5-7.111-smp kernel. SAMBA is a
PDC using OpenLDAP as a passdb backend.  Workstations are combination w2k
SP3, SP4, and Windows XP SP1.

The problem I have is with profile synchronization. If a user obtains a file
that has a blank modified time, Windows substitutes Jan 13, 2038 for the
date.  When the user logs out, the file is copied to the share with the
modified date of Jan 13, 2038 AND a creation date of the same.

Normally, this wouldn't be a problem.  However, when the user deletes the
file and logs out, the file isn't deleted from the share.  This behavior is
of course because the date on the file is greater than the folder that
contains it.  Windows then assumes that the file was created after the
current session was started so it merges with the rest of the profile. 
Now, when the user logs in, that file is back.  The file can only be deleted
via shell session on connecting to the share.

As an interesting side note, I discovered that any file with that date/time
stamp under Windows has a timestamp of Dec 13, 1901 under Linux.

Any suggestions?

smb.conf attached


-------------- next part --------------
[global]
        workgroup = XXXXXXXXXX
        server string = "XXXXXXXXXX Primary Domain Controller"
        null passwords = Yes
        passdb backend = ldapsam:ldap://XXXXXXXXXX
        log level = 1
        syslog = 0
        name resolve order = wins hosts bcast
        time server = Yes
        socket options = TCP_NODELAY SO_SNDBUF=65536 SO_RCVBUF=65536
IPTOS_LOWDELAY
        show add printer wizard = No
        add user script = /var/lib/samba/sbin/smbldap-useradd.pl -a -m '%u'
        delete user script = /var/lib/samba/sbin/smbldap-userdel.pl '%u'
        add group script = /var/lib/samba/sbin/smbldap-groupadd.pl -p '%g'
        delete group script = /var/lib/samba/sbin/smbldap-groupdel.pl '%g'
        add user to group script = /var/lib/samba/sbin/smbldap-groupmod.pl
-m '%u' '%g'
        delete user from group script
= /var/lib/samba/sbin/smbldap-groupmod.pl-x '%u' '%g'
        set primary group script = /var/lib/samba/sbin/smbldap-usermod.pl -g
'%g' '%u'
        add machine script = /var/lib/samba/sbin/smbldap-useradd.pl -w '%u'
        logon script = netlogon.cmd
        logon path = \\XXXXXXXXXX\profiles\%U
        logon home = \\XXXXXXXXXX\profiles\%U
        domain logons = Yes
        os level = 75
        preferred master = Yes
        domain master = Yes
        wins support = Yes
        ldap admin dn = cn=Manager,XXXXXXXXXX
        ldap group suffix = ou=group
        ldap idmap suffix = ou=Idmap
        ldap machine suffix = ou=people
        ldap suffix = dc=XXXXXXXXXX
        ldap user suffix = ou=people
        idmap backend = ldap://XXXXXXXXXX
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        profile acls = Yes
        map acl inherit = Yes

[netlogon]
        comment = "Net logon share"
        path = /netlogon
        write list = root

[profiles]
        comment = "Roaming profile share"
        path = /profiles
        read only = No
        hide files = /desktop.ini/Desktop.ini/DESKTOP.INI/


Yes, I'm aware that all those X's might be a problem - no they're not
actually in the file!


More information about the samba mailing list