# Samba Server causes clients to hang

## betaphi1319

Hi,

I've been trying to connect to my samba server from both my Mac and my Windows machine. In both cases, the client machine connects to the server, appears to authenticate without a problem, but when I try to access any files on the share, Finder (on the Mac) or Explorer (on Windows XP Pro) both go off to never-never land. I can either kill the process on the client or restart the Samba servers on my gentoo box to get them to recover. 

Below is a snippit from my smb.conf and a bit of logging. Any help would be most appreciated!

```
# Global parameters

[global]

        workgroup = NETWORK

        netbios name = DRAGON

        interfaces = 192.168.1.42

        username map = /etc/samba/smbusers

        #admin users= @"Domain Admins"

        server string = Samba Server %v

        security = user

        encrypt passwords = Yes

        min passwd length = 3

        obey pam restrictions = No

        ldap passwd sync = Yes

        #unix password sync = Yes

        #passwd program = /usr/local/sbin/smbldap-passwd -u %u

        #passwd chat = "Changing password for*\nNew password*" %n\n "*Retype new password*" %n\n"

        log level = 4

        syslog = 1

        log file = /var/log/samba/%m.log

        max log size = 500

        time server = Yes

        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

        mangling method = hash2

        Dos charset = 850

        Unix charset = ISO8859-1

        logon script = logon.bat

        logon drive = H:

        logon home =

        logon path =

        domain logons = Yes

        os level = 65

        preferred master = Yes

        domain master = Yes

        wins support = Yes

        passdb backend = ldapsam:ldap://127.0.0.1/

        # passdb backend = ldapsam:"ldap://127.0.0.1/ ldap://slave.idealx.com"

        # ldap filter = (&(objectclass=sambaSamAccount)(uid=%u))

        ldap admin dn = cn=Manager,dc=betaphi,dc=net

        ldap suffix = dc=betaphi,dc=net

        ldap group suffix = ou=Group

        ldap user suffix = ou=People

        ldap machine suffix = ou=Hosts

        ldap idmap suffix = ou=IdMap

#        ldap ssl = start tls

        add user script = /usr/local/samba-bin/smbldap-useradd -m "%u"

        ldap delete dn = Yes

        #delete user script = /usr/local/sbin/smbldap-userdel "%u"

        add machine script = /usr/local/samba-bin/smbldap-useradd -w "%u"

        add group script = /usr/local/samba-bin/smbldap-groupadd -p "%g" 

        #delete group script = /usr/local/sbin/smbldap-groupdel "%g"

        add user to group script = /usr/local/samba-bin/smbldap-groupmod -m "%u"

 "%g"

        delete user from group script = /usr/local/samba-bin/smbldap-groupmod -x

 "%u" "%g"

        set primary group script = /usr/local/sbin/smbldap-usermod -g "%g" "%u"

[homes]

        comment = repertoire de %U, %u

        read only = No

        create mask = 0644

        directory mask = 0775

        browseable = No

```

And a short bit of the logging generated when I try to connect:

```
[2004/08/27 18:31:00, 3] lib/sysquotas.c:sys_get_quota(413)

  sys_get_vfs_quota() failed for mntpath[/mnt/samba] bdev[/dev/hdb3] qtype[2] id[500]: Function not implemented

[2004/08/27 18:31:00, 3] lib/sysquotas.c:sys_get_quota(413)

  sys_get_vfs_quota() failed for mntpath[/mnt/samba] bdev[/dev/hdb3] qtype[4] id[407]: Function not implemented

[2004/08/27 18:31:00, 4] smbd/trans2.c:call_trans2qfsinfo(2097)

  SMBtrans2 info_level = 1

[2004/08/27 18:31:00, 3] smbd/process.c:process_smb(1092)

  Transaction 8 of length 102

[2004/08/27 18:31:00, 3] smbd/process.c:switch_message(887)

  switch message SMBtrans2 (pid 7848) conn 0x3af888

[2004/08/27 18:31:00, 4] smbd/uid.c:change_to_user(193)

  change_to_user: Skipping user change - already user

[2004/08/27 18:31:00, 3] smbd/trans2.c:call_trans2findfirst(1362)

  call_trans2findfirst: dirtype = 22, maxentries = 1, close_after_first=1, close_if_end = 1 requires_resume_key = 0 level = 0x101, max_data_bytes = 16644

[2004/08/27 18:31:00, 3] smbd/dir.c:dptr_create(491)

  creating new dirptr 256 for path ./, expect_close = 1

[2004/08/27 18:31:00, 4] smbd/trans2.c:call_trans2findfirst(1440)

  dptr_num is 256, wcard = .hidden, attr = 22

[2004/08/27 18:31:00, 4] smbd/dir.c:dptr_close_internal(224)

  closing dptr key 256

[2004/08/27 18:31:00, 3] smbd/error.c:error_packet(105)

  error string = No such file or directory

[2004/08/27 18:31:00, 3] smbd/error.c:error_packet(129)

  error packet at smbd/trans2.c(1502) cmd=50 (SMBtrans2) NT_STATUS_NO_SUCH_FILE

[2004/08/27 18:31:00, 3] smbd/process.c:process_smb(1092)

  Transaction 9 of length 106

[2004/08/27 18:31:00, 3] smbd/process.c:switch_message(887)

  switch message SMBtrans2 (pid 7848) conn 0x3af888

[2004/08/27 18:31:00, 4] smbd/uid.c:change_to_user(193)

  change_to_user: Skipping user change - already user

[2004/08/27 18:31:00, 3] smbd/trans2.c:call_trans2findfirst(1362)

  call_trans2findfirst: dirtype = 22, maxentries = 1, close_after_first=1, close_if_end = 1 requires_resume_key = 0 level = 0x101, max_data_bytes = 16644

[2004/08/27 18:31:00, 3] smbd/dir.c:dptr_create(491)

  creating new dirptr 256 for path ./, expect_close = 1

[2004/08/27 18:31:00, 4] smbd/trans2.c:call_trans2findfirst(1440)

  dptr_num is 256, wcard = .DS_Store, attr = 22

[2004/08/27 18:31:00, 4] smbd/dir.c:dptr_close_internal(224)

  closing dptr key 256

[2004/08/27 18:31:00, 4] smbd/trans2.c:call_trans2findfirst(1521)

  SMBtrans2 mask=.DS_Store directory=./ dirtype=22 numentries=1

[2004/08/27 18:31:00, 3] smbd/process.c:process_smb(1092)

  Transaction 10 of length 110

[2004/08/27 18:31:00, 3] smbd/process.c:switch_message(887)

  switch message SMBtrans2 (pid 7848) conn 0x3af888

[2004/08/27 18:31:00, 4] smbd/uid.c:change_to_user(193)

  change_to_user: Skipping user change - already user

[2004/08/27 18:31:00, 3] smbd/trans2.c:call_trans2findfirst(1362)

  call_trans2findfirst: dirtype = 22, maxentries = 1, close_after_first=1, close_if_end = 1 requires_resume_key = 0 level = 0x101, max_data_bytes = 16644

[2004/08/27 18:31:00, 3] smbd/dir.c:dptr_create(491)

  creating new dirptr 256 for path ./, expect_close = 1

[2004/08/27 18:31:00, 4] smbd/trans2.c:call_trans2findfirst(1440)

  dptr_num is 256, wcard = ._.DS_Store, attr = 22

[2004/08/27 18:31:00, 4] smbd/dir.c:dptr_close_internal(224)

  closing dptr key 256

[2004/08/27 18:31:00, 3] smbd/error.c:error_packet(105)

  error string = No such file or directory

[2004/08/27 18:31:00, 3] smbd/error.c:error_packet(129)

  error packet at smbd/trans2.c(1502) cmd=50 (SMBtrans2) NT_STATUS_NO_SUCH_FILE

[2004/08/27 18:31:00, 3] smbd/process.c:process_smb(1092)

  Transaction 11 of length 66

[2004/08/27 18:31:00, 3] smbd/process.c:switch_message(887)

  switch message SMBopen (pid 7848) conn 0x3af888

[2004/08/27 18:31:00, 4] smbd/uid.c:change_to_user(193)

  change_to_user: Skipping user change - already user

[2004/08/27 18:31:00, 2] smbd/dosmode.c:unix_mode(60)

  unix_mode(.DS_Store) inheriting from .

[2004/08/27 18:31:00, 2] smbd/dosmode.c:unix_mode(68)

  unix_mode(.DS_Store) inherit mode 40775

[2004/08/27 18:31:00, 3] smbd/dosmode.c:unix_mode(111)

  unix_mode(.DS_Store) returning 0764

[2004/08/27 18:31:00, 4] smbd/open.c:open_file_shared1(1243)

  calling open_file with flags=0x0 flags2=0x0 mode=0764

[2004/08/27 18:31:00, 2] smbd/open.c:open_file(245)

  CMILLS opened file .DS_Store read=Yes write=No (numopen=1)

[2004/08/27 18:31:00, 3] smbd/process.c:process_smb(1092)

  Transaction 12 of length 63

[2004/08/27 18:31:00, 3] smbd/process.c:switch_message(887)

  switch message SMBreadX (pid 7848) conn 0x3af888

[2004/08/27 18:31:00, 4] smbd/uid.c:change_to_user(193)

  change_to_user: Skipping user change - already user

[2004/08/27 18:31:00, 3] smbd/reply.c:send_file_readX(2148)

  send_file_readX fnum=5788 max=4 nread=4

```

----------

## kupo

It's not a server error. It's client related, probably kernel issue

I've got the same problem   :Crying or Very sad: 

```
smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_add_request: request [ca338ea0, mid=12] timed out!

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_instantiate: //gsg failed, error=-512, closing 4349

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_add_request: request [ccdabee0, mid=51] timed out!

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_add_request: request [ccdabee0, mid=55] timed out!

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_instantiate: //.f.swp failed, error=-512, closing 4354

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_add_request: request [c9546ec0, mid=9] timed out!

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

smb_instantiate: //hej failed, error=-512, closing 7142

smb_add_request: request [c9546ec0, mid=12] timed out!

SMB connection re-established (-5)

smb_trans2: invalid data, disp=0, cnt=0, tot=0, ofs=0

```

----------

## betaphi1319

Kupo,

check to make sure that you have 

```
use sendfile = no
```

in your smb.conf in your global section on your Samba server. That is what I needed to do to correct the problem.

Best of luck

Chris

----------

## MrWinterbottom

I had the same problem, but the sendfile-option didn't solve it alone.

Instead, I had to use

```

use sendfile = no 

large readwrite = no 

max xmit = 16644

```

at the top of the [global] section.

Also watch: http://lists.suse.com/archive/suse-linux-e/2004-Dec/0297.html

Mr. Winterbottom

----------

