I've been running Samba without any problems on a RedHat system through several versions of RedHat, up to and including RedHat 6.2. After the upgrade to RedHat 7.0, which left all other services intact (as far as I can tell) smbd no longer works. The initial symptom was the failure of smbclient to connect to the SMB server; the socket read was timing out, indicating that the server wasn't running. One difference introduced by RedHat 7.0 is the replacement of inetd with xinetd, and I noticed that the conf files don't have as much information as the old /etc/inetd.conf did (specifically, the lines for datagrams didn't get translated). So I removed all of the SMB stuff from xinetd control (commented out the netbios-* lines in /etc/services and renamed the netbios-* files in xinetd.d to hide them from xinetd) and tried starting smbd by hand. This failed with the following error message in /var/log/samba/log.smb: bind failed on port 139 socket_addr=127.0.0.1 (Address already in use) How do I find out who's already listening on port 139? Any other clues would be gratefully appreciated. Many thanks! -- Bob Kline mailto:bkline@rksystems.com http://www.rksystems.com
On Sun, 26 Nov 2000, Bob Kline wrote:> I've been running Samba without any problems on a RedHat system > through several versions of RedHat, up to and including RedHat 6.2. > After the upgrade to RedHat 7.0, which left all other services > intact (as far as I can tell) smbd no longer works. > > The initial symptom was the failure of smbclient to connect to the > SMB server; the socket read was timing out, indicating that the > server wasn't running. > > One difference introduced by RedHat 7.0 is the replacement of inetd > with xinetd, and I noticed that the conf files don't have as much > information as the old /etc/inetd.conf did (specifically, the lines > for datagrams didn't get translated). So I removed all of the SMB > stuff from xinetd control (commented out the netbios-* lines in > /etc/services and renamed the netbios-* files in xinetd.d to hide > them from xinetd) and tried starting smbd by hand. This failed with > the following error message in /var/log/samba/log.smb: > > bind failed on port 139 socket_addr=127.0.0.1 (Address already in use) > > How do I find out who's already listening on port 139? Any other > clues would be gratefully appreciated. Many thanks!I figured out what was going on. Though RedHat neglected to mention this in the upgrade docs for RedHat 7.0, sending a SIGHUP no longer works to have the [x]inet daemon refresh its configuration. You now have to send a SIGUSR2. Once I tumbled onto that nice little incompatibility, it was a simple task to get things working again. Thanks to those who (privately) reminded me about the tool lsof. -- Bob Kline mailto:bkline@rksystems.com http://www.rksystems.com
Bob, On Sun, 26 Nov 2000 12:25:07 -0500 (EST), Bob Kline wrote:> bind failed on port 139 socket_addr=127.0.0.1 (Address already in >use)>How do I find out who's already listening on port 139? Any other >clues would be gratefully appreciated. Many thanks!lsof is your friend: lsof -i:139 Regards, Robert -- --------------------------------------------------------------- Robert.Dahlem@gmx.net Fax +49-69-432647 --------------------------------------------------------------- Sent using PMMail (http://www.pmmail2000.com) - fast, decent, email software; far better than Outlook. Try it sometime.