[Samba] The semaphore timeout period has expired

Jeremy Kister samba-01 at jeremykister.com
Thu Feb 24 10:07:02 GMT 2005

[.. most data for the archives ..]

I've got several windows 2000 machines and a samba 2.2.12 on solaris 7.

for years only one of the windows machines has ever needed to connect to
the samba server.  just a couple of days ago, it was necessary for a
second machine to connect to the samba server.  Whenever the second
machine tried to load the network share, windows came back with its "The
semaphore timeout period has expired."

If I restarted smbd, then the first machine that connected to the samba
server could browse it, but then any others couldnt.  Note I am actually
talking about order of connection here - not referencing the names of
the machines by "first" and "others".

After googling for hours (and upgrading to 2.2.12 from 2.2.3), I
realized the problem.

I am using djb's daemontools package to manage smbd and nmbd.

The soltution was that smbd could not service more than 1 connection at
a time while using -i.  I stopped the smbd service, and started smbd
like normal (-D).  All machines can connect to the server now.

Assuming this is the expected behavior, the documentation should
probably make it clear that only 1 concurrent connection can be serviced
while using -i.

Now that I know what caused the problem, googling helps a bit:

That post was clearly before foreground support.

Are there any solutions for running smbd under daemontools while
allowing more than 1 concurrent connection?

I considered using fghack with smbd -D, but didnt know if that was the
preferred solution.


Jeremy Kister

More information about the samba mailing list