Connecting to Leopard SMB shares from Linux


We recently migrated our main fileserver from a G5 Xserver running Tiger to an Intel Xserve running Leopard (10.5.1). Windows and Mac clients can connect and operate within the shared volumes just fine.

We also have some Linux servers that connect to to the Leopard fileserver using SMB mounts. The Linux servers can connect to the volumes, list the files and folders, create files, and write to files. However, as soon as we try to READ from a file on the Leopard server, it crashes the SMB mount on the Linux server. We see the following error in the SMB File Service Log on the Xserve:

read_data: read failure for 4 bytes to client <IP Address>. Error = Connection reset by peer

It sounds like a permissions error, but I have gone over the permissions both in Server Admin and from the Terminal, and they look fine.

This worked fine on our Tiger implementation. Has anyone heard if this is a bug in Leopard? Other advice?



Connected via smb from fedora core 2 to a Leopard 10.5.2 server (dual-core Intel) I've the same issues.

Creating files, writing to files and even deleting files is allowed. But as soon as I try to read or list them I get an Input/output error.

echo > /mnt/xserve/test.txt
cat /mnt/xserver/test.txt 
cat: /mnt/xserve/test.txt: Input/Output error

OSX samba logs:
  read_data: read failure for 4 bytes to client x.x.x.x Error = Connection reset by peer

Tried a few extra settings:

- ACL is disabled on the shared volume.
- Chmod-ed 0777 (recursive) the entire volume.
- disabled unix extensions in smb.conf.

None of the above makes any difference...

Anyone a clue what might be wrong?


Try adding the following line to the [global] section of /private/etc/smb.conf file on the Leopard server:

acl check permissions = no

This workaround grants the proper ACL permissions for the directory file. One quirk is that if the user does not have permission to delete the file, Windows will not display an access denied error message; instead, it will look to the Windows user like the file was deleted--until that user refreshed the window, at which time the file will "magically" reappear. The file was never actually deleted.


Mac newbie
"Connection Reset" means that the client process failed. You should find something in the Linux syslog files (/var/log/messages, /var/log/samba/...)


When I try to cat a file, after waiting for half a minute cat gives me the Input/output error and smbmount.log on the client machine shows:
[2008/05/17 11:11:11, 2] client/smbmount.c:send_fs_socket(416)
  mount.smbfs[30558]: got signal, getting new socket
[2008/05/17 11:11:11, 3] lib/util_sock.c:open_socket_out(733)
  Connecting to x.x.x.x at port 445
[2008/05/17 11:11:11, 4] client/smbmount.c:do_connection(189)
  30558: session request ok
[2008/05/17 11:11:11, 4] client/smbmount.c:do_connection(232)
  30558: session setup ok
[2008/05/17 11:11:11, 4] client/smbmount.c:do_connection(242)
  30558: tconx ok
/Var/log/messages displays:
May 17 11:08:33 fedora mount.smbfs[30558]:   mount.smbfs: entering daemon mode for service \\x.x.x.x\share, pid=30558 
May 17 11:11:41 fedora kernel: smb_add_request: request [228a8e80, mid=23] timed out!
Besides the time out I don't see any errors...


Mac newbie
I guess you need to increase the Samba debug level on both sides and ask the samba people whether they can help you. Is your Linux box up to date?


Hi mvcube,

Yep, the box is up-to-date. At least for a fc2 (which is something like antique these days) it is. ;)
Think I should build one of the newer samba versions myself.

I'v been using all loglevels from 4 to 10. Although these higher levels are very verbose there are still no errors present.

For now I'm exporting the leopard shares via good ol' nfs. I'll probably will stick with that. Allthough it doesn't provide anything like smb's creation masks I like it's robustness and it's performance.

Thanks though!