nmbd dies on startup when network interfaces are not up yet

Bug #462169 reported by Marcus Asshauer on 2009-10-27
234
This bug affects 42 people
Affects Status Importance Assigned to Milestone
Release Notes for Ubuntu
Undecided
Mathias Gug
samba
Invalid
Undecided
Unassigned
samba (Ubuntu)
High
Steve Langasek
Nominated for Jaunty by Chris Proud
Karmic
High
Steve Langasek
Lucid
High
Steve Langasek

Bug Description

Binary package hint: samba

After installation with the daily build (20091027.2) ubuntu server i386 cd there is no nmbd running on my system. The logfile tells me that the daemons was startet but there is no process. The /var/run/samba/nmbd.pid file is still there but the pid from this file is not there. If i reboot the machine i can reproduce this.
smbd and winbind are running as normal.

Please tell me what i can do to help you.

================
Karmic release note:

Samba nmbd daemon not started during boot

Upon boot a karmic system with samba installed will not have the nmbd daemon running. A workaround is to restart the samba service once the system a finished booting. A fix for this issue should be provided in a post-release update.

================

TEST CASE:
1.install samba 3.4.0-3ubuntu5.1 on a system whose wireless network is managed with network manager, on a network with both ipv6 and ipv4 support.
2. dissociate from the network using the 'disconnect' option in nm-applet.
3. $ sudo service samba stop
4. $ sudo service samba start
5. verify that the nmbd process is not running.
6. reconnect to the wireless.
7. verify that the nmbd process is still not running.
8. install samba 3.4.0-3ubuntu5.3
9. repeat steps 2-6
10. verify that the nmbd process is now running.

Marcus Asshauer (mcas) wrote :
Marcus Asshauer (mcas) wrote :
Steve Langasek (vorlon) wrote :

I suspect this is a result of the boot sequence starting up samba before the network interface is up. nmbd won't start if the only available network interface is the loopback interface.

Marcus Asshauer (mcas) wrote :

This is under virtualbox with dhcp. After a "sudo /etc/init.d/samba restart" nmbd is running.

Mathias Gug (mathiaz) on 2009-10-27
Changed in samba (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Mathias Gug (mathiaz) on 2009-10-27
summary: - nmbd dies
+ nmbd dies on startup when network interfaces are not up yet
Chuck Short (zulcss) wrote :

I would be interested in seeing the dmesg when this happens.

chuck

Mathias Gug (mathiaz) on 2009-10-29
Changed in samba:
status: New → Invalid
Changed in ubuntu-release-notes:
assignee: nobody → Mathias Gug (mathiaz)
status: New → In Progress
Mathias Gug (mathiaz) on 2009-10-29
description: updated
Changed in ubuntu-release-notes:
status: In Progress → Fix Committed
Steve Langasek (vorlon) wrote :

Documented at <https://wiki.ubuntu.com/KarmicKoala/ReleaseNotes#Samba%20nmbd%20daemon%20not%20started%20during%20boot>:

On an Ubuntu 9.10 system with Samba installed, the {{{nmbd}}} daemon may fail to start on boot. To workaround this problem, restart the samba service once the system has finished booting by running {{{sudo service samba restart}}}. A fix for this issue will be provided in a post-release update. (Bug:462169)

Changed in ubuntu-release-notes:
status: Fix Committed → Fix Released

where can I get this fix?

MicioMax (max-veneto) wrote :

Same problem here..... is there a fix somewhere ?

Max

JS (j5) wrote :

Is there any workaround available?

Steve Langasek (vorlon) wrote :

The workaround, as stated in the release notes, is to manually run 'sudo service samba restart' after boot.

Steve Langasek (vorlon) wrote :

I'm uploading a possible fix for this to karmic-proposed, but there's already another SRU in progress for samba so it shouldn't actually be accepted for testing until we have confirmation of the fix for bug #462626. So if someone is in a position to help test that (Windows 7 domain authentication), that would be appreciated - and would help with getting the fix for *this* bug out to you.

Changed in samba (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Steve Langasek (vorlon)
Changed in samba (Ubuntu Karmic):
assignee: nobody → Steve Langasek (vorlon)
importance: Undecided → High
milestone: none → karmic-updates
status: New → In Progress
Changed in samba (Ubuntu):
milestone: none → lucid-alpha-1
Steve Langasek (vorlon) wrote :

We should fix this differently in karmic vs. lucid; for lucid we should convert samba to native upstart jobs, then we only need one nmbd job that is started once at the correct time instead of having to try multiple times to start the init script.

This is a more intrusive fix, though, so I'm not going to attempt that in an SRU for 9.10.

Steve Langasek (vorlon) wrote :

While I'm fairly certain that the uploaded fix is correct, surprisingly, I've been unable to reproduce the original problem despite forcibly disabling my network interface. Can someone who is seeing this problem in Ubuntu 9.10 please send the following:

- a copy of /var/log/samba/log.nmbd showing the boot-time failure
- a copy of your /etc/samba/smb.conf

James (jasch1) wrote :

For what it's worth:

I have installed 9.10 more than 15 times. Most of the times I lost "sharing" and could not be seen
on the network. I could restart Samba and the network would be ok; until the next boot. I could not get "Open as administrator" to work", nor any of the context menu extra "stuff". I would loose the ability for other computers on the network access files (web pages) on the 9.10 computer. The network has Linux and Windows computers. For three times, I installed 9.04 and installed all my programs, got every thing working great. I then upgraded over network from 9.04 to 9.10 with no problems at all. I find 9.10 loaded from "scratch" produces an almost unusable system for network use, but produces an excellent system by the upgrade route.

James (jasch1) on 2009-11-14
Changed in samba (Ubuntu Karmic):
status: In Progress → Fix Released
Steve Langasek (vorlon) on 2009-11-14
Changed in samba (Ubuntu Karmic):
status: Fix Released → In Progress
tags: added: iso-testing
Alain Kalker (miki4242) wrote :

> Can someone who is seeing this problem in Ubuntu 9.10 please send the following:

> - a copy of /var/log/samba/log.nmbd showing the boot-time failure
> - a copy of your /etc/samba/smb.conf

Here you go. I set "log level = 3" (possibly overkill) to make an error show up, for otherwise nmbd seems to die silently right after startup.

Alain Kalker (miki4242) wrote :

And here the smb.conf (not changed AFAIK except for "log level = 3")

Steve Langasek (vorlon) wrote :

Thanks, looks like this is the key bit of the log:

[2009/11/22 22:31:50, 3] ../lib/util/util_net.c:56(interpret_string_addr_internal)
  interpret_string_addr_internal: getaddrinfo failed for name 0.0.0.0 [Address family for hostname not supported]

Alain Kalker (miki4242) wrote :

Yes. I tried incrementing the log level in smb.conf and rebooting, but the information logged remains the same, until reaching log level 8 or higher. Then nmbd suddenly appears to start normally. There appears to be something racy going on here.

Alain Kalker (miki4242) wrote :

For a possible workaround, maybe we could look at this bug (note: not the same problem, and no longer available in Launchpad): https://lists.ubuntu.com/archives/ubuntu-server-bugs/2009-May/012893.html

Personally I would prefer something in /etc/network/if-*.d/ which would also serve users without NetworkManager.

Martin Pitt (pitti) wrote :

The uploaded package adds a lot of new files (such as exports/*.syms and various Makefiles and *.pc). The actual change looks fine to me, if samba's init script does the right thing on start if smbd is already running (which seems to be the case from visual inspection).

I rejected the package, can you please upload it again with some cleaning before? Thanks!

seldon7 (ubuntu-pengo) wrote :

I've fixed this on mine.

Loaded BUM, and changed runlevel from 20 to 19 for samba.

Now, it loads up fine for me on boot up.

razor7 (ghiamar) wrote :

I confirm the bug...the PID file is there, but no process at all using ps -e

restarting samba says this "start-stop-daemon: warning: failed to kill 1507: No such process" (1507 is supposed to be nmbd)

Please advise to solve this annoyance!

Thanks a lot!

seldon7 (ubuntu-pengo) wrote :

scratch my comment 2 above.

I changed runlevel to 19. seemed to work once, but doesn't work any more.

samba still dies on startup and i have to load manually each time with "sudo /etc/init.d/samba start"

Martin Pitt (pitti) wrote :

Accepted into karmic-proposed. Please test and submit feedback here. Thank you!

tags: added: verification-needed
Changed in samba (Ubuntu Karmic):
status: In Progress → Fix Committed
Marco (marcodefreitas) wrote :

Update was done. Bug not solved.

Pete24v (pete-martin) wrote :

still not working on mine, keep having to manually restart samba after every boot in Karmic. Jaunty worked fine in this area.

razor7 (ghiamar) wrote :

The same to me...not solved at all!

norton (bz2klag) wrote :

I just wanted to add what I know.

On a Celeron D 2.53, 650i, 4 GB, I did not have this issue, or at least I didn't notice it.
When I switched over to AMD X2 4800+, 780G, 2 GB, I began to experience this issue.

For what it's worth, if I reboot warm, the issue only occurs about half the time.
If I reboot from cold (power off and or AC all the way off), it reproduces itself reliably.

The 0.0.0.0 address listed in the log someone provided earlier looks like a clue.
So just for fun I set the network from DHCP to Manual fixed static IP, and now several
totally cold boots later, nmbd runs OK all by itself without needing anyone to hold its hand.

It's not a perfect solution, especially if you have lots of PCs to manage, but for me it's fine.

My guess is that on a faster CPU maybe with multiple cores, there is a serialization issue
where nmbd gives up just before DHCP has successfully set the IP address. I'm just guessing
based on the single-core machine not really having this issue.

Thanks, btw, for the great OS, I shall not ever buy windoze again.

Marco (marcodefreitas) wrote :

I have the problem with an AMD single core.

razor7 (ghiamar) wrote :

Hi folks...i don't think this issue is processor dependant...Best regards!

Steve Langasek (vorlon) on 2009-12-09
Changed in samba (Ubuntu Lucid):
milestone: lucid-alpha-1 → lucid-alpha-2
Steve Langasek (vorlon) wrote :

DHCP vs. static IP does not completely explain this; I've been entirely unable to reproduce the problem even when testing nmbd startup with all interfaces deliberately shut down, and nmbd continues to start up fine. Can someone who's able to reproduce the problem also give me their /etc/resolv.conf and /etc/nsswitch.conf files?

Samba never starts for me during boot, se every time want to use the network I have to start the samba service manually!
Here are the contents of the files

/etc/resolv.conf:

# Generated by NetworkManager
domain telemach.net
search telemach.net
nameserver 213.143.65.11
nameserver 213.143.65.12

/etc/nsswitch.conf:

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd: compat
group: compat
shadow: compat

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
networks: files

protocols: db files
services: db files
ethers: db files
rpc: db files

netgroup: nis

razor7 (ghiamar) wrote :

Here are mine:

/etc/resolv.conf:
# Generated by NetworkManager
nameserver 208.67.222.222
nameserver 208.67.220.220

/etc/nsswitch.conf:
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd: compat
group: compat
shadow: compat

hosts: files mdns4_minimal [NOTFOUND=return] wins dns mdns4 #changed to avoid OpenDNS issues
networks: files

protocols: db files
services: db files
ethers: db files
rpc: db files

netgroup: nis

skyhard,

On Wed, Dec 09, 2009 at 10:19:38PM -0000, skyhard wrote:
> Samba never starts for me during boot, se every time want to use the
> network I have to start the samba service manually!

The bug being tracked here is specifically related to the nmbd server not
starting. Can you please confirm that your boot-time start error has the
same log output as Alain's in
<https://bugs.launchpad.net/ubuntu/+source/samba/+bug/462169/comments/15>,
using 'log level = 3' in /etc/samba/smb.conf? Your description of what
you're seeing makes me think it may not be the same problem.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Download full text (15.6 KiB)

/var/log/samba/log.nmbd:

[2009/12/07 11:44:01, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 11:44:01, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/07 12:16:09, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 12:16:09, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/07 12:17:02, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 12:17:25, 0] nmbd/nmbd_become_lmb.c:395(become_local_master_stage2)
  *****

  Samba name server MIRAN-DESKTOP is now a local master browser for workgroup WORKGROUP on subnet 192.168.1.12

  *****
[2009/12/07 14:49:06, 0] nmbd/nmbd.c:71(terminate)
  Got SIGTERM: going down...
[2009/12/07 21:02:58, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 21:02:59, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/07 21:24:05, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 21:24:06, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/07 21:46:13, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 21:46:14, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/07 22:49:12, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 22:49:13, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/07 23:30:24, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/07 23:30:25, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/08 01:59:57, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/08 01:59:57, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/08 13:28:40, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/08 13:28:41, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/08 23:07:27, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/08 23:07:28, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/08 23:54:27, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/08 23:54:27, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/09 00:18:01, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/09 00:18:01, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/09 12:41:31, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/09 12:41:31, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/09 17:50:16, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/09 17:50:16, 0] nmbd/nmbd.c:693(open_sockets)
[2009/12/09 23:15:55, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 ...

razor7 (ghiamar) wrote :

nmbd lof after changing loglevel to 3

[2009/12/09 20:10:55, 0] nmbd/nmbd.c:854(main)
  nmbd version 3.4.0 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/12/09 20:10:55, 2] lib/tallocmsg.c:106(register_msg_pool_usage)
  Registered MSG_REQ_POOL_USAGE
[2009/12/09 20:10:55, 2] lib/dmallocmsg.c:77(register_dmalloc_msgs)
  Registered MSG_REQ_DMALLOC_MARK and LOG_CHANGED
[2009/12/09 20:10:55, 3] param/loadparm.c:9016(lp_load_ex)
  lp_load_ex: refreshing parameters
Initialising global parameters
[2009/12/09 20:10:55, 3] ../lib/util/params.c:550(pm_process)
  params.c:pm_process() - Processing configuration file "/etc/samba/smb.conf"
[2009/12/09 20:10:55, 3] param/loadparm.c:7703(do_section)
  Processing section "[global]"
[2009/12/09 20:10:55, 3] nmbd/nmbd.c:381(reload_nmbd_services)
  services not loaded
[2009/12/09 20:10:55, 2] nmbd/nmbd.c:887(main)
  Becoming a daemon.
[2009/12/09 20:10:55, 3] nmbd/nmbd.c:948(main)
  Opening sockets 137
[2009/12/09 20:10:55, 3] ../lib/util/util_net.c:56(interpret_string_addr_internal)
  interpret_string_addr_internal: getaddrinfo failed for name 0.0.0.0 [Address family for hostname not supported]
[2009/12/09 20:10:55, 0] nmbd/nmbd.c:693(open_sockets)

The last two lines shows an error...

Steve Langasek (vorlon) wrote :

martin,

On Wed, Dec 09, 2009 at 10:26:30PM -0000, razor7 wrote:
> hosts: files mdns4_minimal [NOTFOUND=return] wins dns mdns4 #changed to avoid OpenDNS issues

The use of 'wins' here suggests you may have a different bug. Please
provide the /etc/samba/smb.conf and /var/log/samba/log.nmbd from this system
as well (after setting log level = 3) - preferably attaching these to your
original bug, bug #487795, so if we find ourselves unmarking that bug as a
duplicate, all your information stays with it.

So far, the only way I can reproduce any failure at all is if the loopback
interface is also down, and no interfaces line is set. That would appear to
be a duplicate of bug #461725; and furthermore it produces an entirely
different error message in the log:

 [2009/12/09 15:16:37, 0] lib/interface.c:527(load_interfaces)
   ERROR: Could not determine network interfaces, you must use a interfaces config line

and causes smbd to fail to start *in addition to* nmbd. So this doesn't
match the bug report of the original user.

It looks like I'm still missing here a complete set of:

 - description of which server processes fail to run
 - copy of /etc/samba/smb.conf
 - copy of /var/log/samba/log.nmbd (with log level = 3 set)
 - copy of /etc/nsswitch.conf
 - copy of /etc/resolv.conf

from *the same* user. Until I have all of these things (preferably from the
original submitter, with other people experiencing problems filing their own
bug reports so that they can be tracked separately if it's *not* the same
bug), I don't think I'm going to make forward progress on resolving this.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Steve Langasek (vorlon) wrote :

skyhard, your log.nmbd doesn't appear to have come from a system with 'log level = 3' set?

Steve Langasek (vorlon) wrote :

(without the additional logging verbosity, we get no information about why nmbd has exited, making it useless for debugging)

Steve Langasek (vorlon) wrote :

razor7,

Thanks - the one last piece of information I need from you is your /etc/samba/smb.conf.

razor7 (ghiamar) wrote :
razor7 (ghiamar) wrote :
razor7 (ghiamar) wrote :

Here you are...all the files you requested.

To add more weirdness, i had to restart my PC after changing log level, and to upload log.nmbd file, but surprise! nmbd war working...jajaja ¿¿??, so i restarted again...and nmbd stopped working again.

Best regards!

razor7 (ghiamar) wrote :
razor7 (ghiamar) wrote :
Steve Langasek (vorlon) wrote :

Ok, thanks. It turns out the only thing that's needed in order to reproduce this problem is to have an empty /etc/resolv.conf; somehow my earlier testing didn't turn this up, but now that I have this I can reproduce the error regardless of the samba config.

Which let me find the problem with the fix in karmic-proposed: NetworkManager helpfully doesn't set a proper value for the $ADDRFAM variable, it sets it to "NetworkManager" instead. Now that I know this, I'll have an updated package uploaded to -proposed shortly.

Steve Langasek (vorlon) on 2009-12-10
description: updated
Martin Pitt (pitti) wrote :

Update accepted into -proposed, please test:

samba (2:3.4.0-3ubuntu5.3) karmic-proposed; urgency=low

  * debian/samba.if-up: allow "NetworkManager" as a recognized address
    family... it's obviously /not/ an address family, but it's what gets
    sent when using NM, so we'll cope for now.

Bane (rudlavibizon) wrote :

nmbd is now starting OK but now I have this problem since the update:

https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/426267

I installed this update and is seems to fix the problem. When are we going to see this fix get transfered from -proposed to -recomended?

Steve Langasek (vorlon) wrote :

skyhard,

We normally allow 7 days for regression testing in -proposed before copying to -updates. Do you run into bug #426267, that Bane describes above?

Bane, regarding bug #426267 - was this working for you in Ubuntu 9.10 prior to the update?

No, I didn't run into that bug. Just to add I have the amd64 version of karmic

Steve, yes it worked.

On Wed, Dec 16, 2009 at 7:35 PM, skyhard <email address hidden> wrote:

> No, I didn't run into that bug. Just to add I have the amd64 version of
> karmic
>
> --
> nmbd dies on startup when network interfaces are not up yet
> https://bugs.launchpad.net/bugs/462169
> You received this bug notification because you are a direct subscriber
> of the bug.
>

f.b2006 (f-b2006) on 2009-12-21
Changed in ubuntu-release-notes:
status: Fix Released → Fix Committed
status: Fix Committed → Confirmed
Steve Langasek (vorlon) on 2009-12-21
Changed in ubuntu-release-notes:
status: Confirmed → Fix Released
Csimbi (turbotalicska) wrote :

This might be somehow related, though it's about samba stopping randomly - rather than not starting at all:
https://bugs.launchpad.net/ubuntu/+source/samba/+bug/498734

Kouros (bolozofvelasgo) wrote :

on my system the process starts but remains in zombie state

razor7 (ghiamar) wrote :

Hi guys...how should I know if i have this fix installed or not? I can not see it in my update manager list...and Samba still doesn't work at startup

Thanks a lot!

Csimbi (turbotalicska) on 2009-12-26
Changed in samba (Ubuntu Karmic):
status: Fix Committed → Fix Released
status: Fix Released → Fix Committed
zhamrock (zhamrock) wrote :

Confirmed its fixed the startup issue in 3.4.0-3ubuntu5

razor7 (ghiamar) wrote :

Hi...i have 3.4.0-3ubuntu5.1 and this issue is not solved at all...!!!

thebrotherofasis (libardoab) wrote :

I can also confirm that while I'm running 3.4.0-3ubuntu5.1 the issue hasn't
been solved either.

After booting, running /etc/init.d/samba status shows nmbd not running.

On Tue, Jan 5, 2010 at 10:22 AM, razor7 <email address hidden> wrote:

> Hi...i have 3.4.0-3ubuntu5.1 and this issue is not solved at all...!!!
>
> --
> nmbd dies on startup when network interfaces are not up yet
> https://bugs.launchpad.net/bugs/462169
> You received this bug notification because you are a direct subscriber
> of the bug.
>

On Tue, Jan 05, 2010 at 04:04:16PM -0000, thebrotherofasis wrote:
> I can also confirm that while I'm running 3.4.0-3ubuntu5.1 the issue hasn't
> been solved either.

It's not supposed to have been solved in 3.4.0-3ubuntu5.1. The fix is in
3.4.0-3ubuntu5.3, present in karmic-proposed.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

razor7 (ghiamar) wrote :

I COnfirm that this upgrade worked ok...nmbd does not dies anymore...

Martin Pitt (pitti) on 2010-01-08
tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package samba - 2:3.4.0-3ubuntu5.3

---------------
samba (2:3.4.0-3ubuntu5.3) karmic-proposed; urgency=low

  * debian/samba.if-up: allow "NetworkManager" as a recognized address
    family... it's obviously /not/ an address family, but it's what gets
    sent when using NM, so we'll cope for now.

samba (2:3.4.0-3ubuntu5.2) karmic-proposed; urgency=low

  * debian/samba.if-up, debian/rules: add an if-up.d script for samba to
    try to start nmbd, if it's not running because /etc/init.d/samba ran
    before the network was up at boot time. LP: #462169.
 -- Steve Langasek <email address hidden> Thu, 10 Dec 2009 11:58:34 +0000

Changed in samba (Ubuntu Karmic):
status: Fix Committed → Fix Released

finaly!

Thierry Carrez (ttx) on 2010-01-13
Changed in samba (Ubuntu Lucid):
milestone: lucid-alpha-2 → lucid-alpha-3
Steve Langasek (vorlon) wrote :

Is anyone still able to reproduce this problem in lucid? I haven't been able to reproduce it, so I wonder if this wasn't ultimately an eglibc (getaddrinfo) bug that's been fixed, and the extra handling of nmbd is unnecessary now.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package samba - 2:3.4.3-2ubuntu2

---------------
samba (2:3.4.3-2ubuntu2) lucid; urgency=low

  * debian/rules, debian/samba.if-up: allow "NetworkManager" as a recognized address
    family... it's obviously /not/ an address family, but it's what gets
    sent when using NM, so we'll cope for now. (LP: #462169). Taken from karmic-proposed.
  * debian/control: Recommend keyutils for smbfs (LP: #493565)
  * debian/patches/series, debian/patches/fix-too-many-open-files.patch: Windows 7 needs
    the Windows server open file handle number of 16384 handles. (LP: #462172)
 -- Chuck Short <email address hidden> Tue, 19 Jan 2010 12:54:46 -0500

Changed in samba (Ubuntu Lucid):
status: In Progress → Fix Released
Scott Moser (smoser) wrote :

Steve asked for me to attach 'log level = 3' logs.
I did clean install of alpha2, added the above to /etc/samba/smb.conf and rebooted. after login there is no nmbd process.

ripeart (ripeart) wrote :

Hello, this is affecting me also, rendering my server unusable. I have the same issues as everyone above however with the additional that my system stops at the error. I cannot log in locally, nor can I ssh into the box. I can however ping the box. Is there anyway to get past this error so I can issue the start/stop for samba?

I see the comment that "This bug was fixed in the package samba - 2:3.4.3-2ubuntu2", how can I load this specific SMB package?

Thanks.

theozzlives (theozzlives) wrote :

have you tried: sudo /etc/init.d/samba start? This is not meant for a production server we're only in Alpha 2. I have to issue the previous command in order for my laptop to be seen by my other computers. the bookmark idea was to see other computers. I hope this helps.

Steve Langasek (vorlon) wrote :

On Sat, Jan 23, 2010 at 10:20:19PM -0000, ripeart wrote:
> Hello, this is affecting me also, rendering my server unusable.

This bug is fixed in both karmic and lucid. If you have not yet installed
the updated samba package from karmic-updates, you should do so. If you
have the current karmic-updates or lucid version of samba installed and are
still having problems, you have a different bug and should file a separate
report.

> I have the same issues as everyone above however with the additional that
> my system stops at the error. I cannot log in locally, nor can I ssh into
> the box.

This bug in no way would cause such symptoms.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

qiuyao (qiuyaoboy) wrote :

I believe this script is the key point.
/etc/network/if-up.d/samba
After I add this:
---------------------
#!/bin/sh
exit 0
---------------------
The "could not access PID file for nmbd" disappeared.

Merrattic (merrattic) wrote :

This has just cropped up on my PC too (Xubuntu 9.10), after installing lirc, hangs on bootup just before the login screen (slim). (smb.conf is vanilla). Wouldn't work in recovery mode, told me about the nmbd pid but wouldn't let me do anything about it so CTRL-ALT-DEL was necessary.

Samba version 2:3.4.0-3ubuntu5.6

Found that by removing quiet and splash from the grub boot entry I could boot up OK again, and nmbd and smbd showing in htop.

Christian Perrier (bubulle) wrote :

> This has just cropped up on my PC too (Xubuntu 9.10), after installing
> lirc, hangs on bootup just before the login screen (slim). (smb.conf is
> vanilla). Wouldn't work in recovery mode, told me about the nmbd pid but
> wouldn't let me do anything about it so CTRL-ALT-DEL was necessary.
>
> Samba version 2:3.4.0-3ubuntu5.6
>
> Found that by removing quiet and splash from the grub boot entry I could
> boot up OK again, and nmbd and smbd showing in htop.

The same was reported to Debian as well and looks like it is the same
timing problem: http://bugs.debian.org/576415

I'm just discovering the long story of that LP#462169. It apparently
got fixed in some Ubuntu packages and just forgot flowing "upstream".

If only I could find the patch in LP, it could be added to the Debian
package but that bug is...ahem....quite hairy. I get gazillion
informations about the people who are subscribed to the bug but no
obvious point that says *this is the fix*.

@Christian Perrier

If you search for "fixed in" in this page, you'll find:

This bug was fixed in the package samba - 2:3.4.3-2ubuntu2

Then you go to:

https://launchpad.net/ubuntu/+source/samba/2:3.4.3-2ubuntu2

And you'll find:

http://launchpadlibrarian.net/38098612/samba_2%3A3.4.3-2ubuntu1_2%3A3.4.3-2ubuntu2.diff.gz

I guess, you can also look for #LP: 462169 in the Changelog of the latest version of the branch that you prefer. Then find the diff for the version mentioned in the Changelog.

And perhaps there is an even better way to find this information.

On Mon, Apr 05, 2010 at 08:58:19AM +0200, Christian PERRIER wrote:
> > This has just cropped up on my PC too (Xubuntu 9.10), after installing
> > lirc, hangs on bootup just before the login screen (slim). (smb.conf is
> > vanilla). Wouldn't work in recovery mode, told me about the nmbd pid but
> > wouldn't let me do anything about it so CTRL-ALT-DEL was necessary.

> > Samba version 2:3.4.0-3ubuntu5.6

> > Found that by removing quiet and splash from the grub boot entry I could
> > boot up OK again, and nmbd and smbd showing in htop.

> The same was reported to Debian as well and looks like it is the same
> timing problem: http://bugs.debian.org/576415

> I'm just discovering the long story of that LP#462169. It apparently
> got fixed in some Ubuntu packages and just forgot flowing "upstream".

Hardly a case of forgetting; the reports of nmbd failures only started
coming in after a change in behavior in upstart, which Debian doesn't use,
so the fix wasn't believed to be relevant to Debian. In hindsight, it
makes sense that it would also affect NM-using Debian systems.

The exact problem appears to also result in part from a behavior change in
nmbd, and I've never been able to reliably reproduce this; I suspect an
eglibc regression, but since I can't reproduce it to begin with, it's been
hard to pin down.

> If only I could find the patch in LP, it could be added to the Debian
> package but that bug is...ahem....quite hairy. I get gazillion
> informations about the people who are subscribed to the bug but no
> obvious point that says *this is the fix*.

https://launchpad.net/ubuntu/+source/samba/2%3a3.4.0-3ubuntu5.2 and
https://launchpad.net/ubuntu/+source/samba/2%3a3.4.0-3ubuntu5.3 are the
precise versions you want; this has been implemented differently for Lucid
by condensing the if-up.d script and the init script to a single upstart job
that handles this. The diffs are available at
<http://launchpadlibrarian.net/35571808/samba_2%3A3.4.0-3ubuntu5.1_2%3A3.4.0-3ubuntu5.2.diff.gz>
and
<http://launchpadlibrarian.net/36662827/samba_2%3A3.4.0-3ubuntu5.2_2%3A3.4.0-3ubuntu5.3.diff.gz>.

On Sun, Apr 04, 2010 at 05:19:04PM +0200, Julien Cristau wrote:
> On Sun, Apr 4, 2010 at 16:31:16 +0200, Christian PERRIER wrote:

> > Could you do "ls /etc/rc2.d/*network-manager* /etc/rc2.s§*samba*"?

> The connection can get established long after network-manager is
> started, so even if network-manager is started before samba, that
> doesn't mean the networking will be up.
> I think nmbd should either stay around in case the network comes up
> later, or have something in /etc/network/if-up.d/ restart it if
> necessary.

An if-up.d script seems to be exactly what's necessary here, unless someone
can figure out *why* nmbd is failing...

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Fernando (bocadillodeatun) wrote :

I just installed the latest 10.04 (including updates) and the same
problem happened to me.

In case someone might find this information useful,
this is how I fixed it:

In file "/etc/init/smbd.conf"

change this:

  start on local-filesystems

into this:

  start on (local-filesystems and net-device-up IFACE!=lo)

(which is how nmbd is also started, btw).

Hope it helps.

Ademar Arvati Filho (arvati) wrote :

With Lucid i have the same proble. Resolved with file described below:

location of file:
/etc/network/if-up.d/samba

#! /bin/sh
# Reload samba when an interface comes up, to allow it to start
# listening on new addresses.
set -e
# Don't bother to restart samba server when lo is configured.
if [ "$IFACE" = lo ]; then
exit 0
fi
# Only run from ifup.
if [ "$MODE" != start ]; then
exit 0
fi
# samba server only cares about inet and inet6.
if [ "$ADDRFAM" != inet ] && [ "$ADDRFAM" != inet6 ]; then
exit 0
fi

service smbd restart >/dev/null 2>&1 || true

exit 0

Steve Langasek (vorlon) wrote :

No, you do *not* have the same problem. Please file a new bug report.

Excuse me to enter this thread lately, but something looks weird to me here.

I've just experienced the same issue with Lucid, trying to set up samba server, on a Wifi hooked laptop.
With current samba-server package, result after Lucid boots is:

- smbd is running
- nmbd is not running

leading to samba and W$ networking failing.

Following the advices given in this thread, I can read, at the beginning of these 2 files:

- /etc/init/smbd.conf:
start on local-filesystems

- /etc/init/nmbd.conf:
start on (local-filesystems and net-device-up IFACE!=lo)

From what I understand here, we let smbd start at boot in any case, but nmbd only if a network I/F is up (?)

For a Wifi laptop, a network interface will only be up, after a user logs in, and activates Wifi using network-manager applet. During or just after boot, Wifi is off.

So I just changed nmbd.conf start statement to look exactly as smbd.conf one (i.e.: start on local-filesystems), and now both smbd *and* nmbd gets started at boot, and samba sharing starts fine as soon as Wifi is up after a user logs in.

=> So my question here: why having a different startup condition for smbd and nmbd, as both daemons need to be running for samba to operate ?

On Sun, May 16, 2010 at 12:28:45PM -0000, Nicolas M wrote:
> => So my question here: why having a different startup condition for
> smbd and nmbd, as both daemons need to be running for samba to operate ?

Because:

 - nmbd is only needed for operations in some environments, so smbd should
   not block on nmbd being ready before starting
 - nmbd *must* wait for a broadcast-capable network interface to come up
   before it's started, otherwise it will fail - so it can't use the same
   start condition smbd currently does.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Ok Steve, not being a Samba guru, was just trying to figure this out.

After having browsed through the well known "Using Samba" (http://www.samba.org/samba/docs/using_samba/toc.html), I did not get this understanding of smbd versus nmbd.

I've been using Samba like that (smbd+nmbd, with or without network) on a home server for several years, and on the way now to migrating the whole thing on Ubuntu.

Just sharing this information, that loading nmbd at boot, even with no network, did solve the problem for me.
I did not notice nmbd too much complaining about no network, here is the log I get in log.nmbd, looks like nmbd just sits and waits for a network I/F to come up:

   nmbd version 3.4.7 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2010/05/16 16:42:30, 0] nmbd/nmbd_subnetdb.c:206(create_subnets)
  create_subnets: No local IPv4 non-loopback interfaces !
[2010/05/16 16:42:30, 0] nmbd/nmbd_subnetdb.c:207(create_subnets)
  create_subnets: Waiting for an interface to appear ...

Steve Langasek (vorlon) wrote :

Why do you think you need nmbd to start at all when you don't have a network?

I think you need to be explicit here about what problem you were seeing when using the standard nmbd.conf.

Right, let me precise a bit more what I’m doing.
I have a home network with various W$ and Ubuntu PCs + a Mandriva (2007) server.
This server is used for sharing files, printing, scanning, photo/videos web pages, ssh…
Due to variety of OSes, file sharing between W$ PCs and this server uses SMB (Ubuntu PCs use mostly ssh folders).

Samba is installed on the server, the Mandriva (and formerly Mandrake) configuration is very close to what explained in the “Using Samba” book: Both nmbd and smbd daemons are started at boot time.

Now, with Ubuntu, here is what I get, with standard nmbd and smbd conf files :
- At boot time : only smbd started.
- nmbd must be started manually or samba restarted when network is up to have nmbd + smbd operational.
- If only smbd is running, file sharing on the server is *not* working: the server is visible from the PCs, but impossible to enter workgroup or shares (they are not visible).
- If nmbd (and smbd) started, then SMB/Samba file sharing works at 100%

As I explain, due to Wifi, network will come up only after boot (and after nmbd start).
Having smbd running without nmbd is useless, at least, in my case.
I don't understand exactly, why we do not start nmbd, even if no network avail: Other daemons using the network *are* started at boot (e.g., ntpd, sshd, ...) even if no network is available.

Steve Langasek (vorlon) wrote :

On Mon, May 17, 2010 at 05:16:47PM -0000, Nicolas M wrote:

> Now, with Ubuntu, here is what I get, with standard nmbd and smbd conf
> files :
> - At boot time : only smbd started.
> - nmbd must be started manually or samba restarted when network is
> up to have nmbd + smbd operational.

That should not be the case. The upstart configuration says *to start nmbd
when the network comes up.* Please put the nmbd.conf back in the correct
configuration, boot with '--verbose' on the commandline, log in, and attach
the /var/log/syslog.conf that results.

> - If only smbd is running, file sharing on the server is *not* working: the server is visible from the PCs, but impossible to enter workgroup or shares (they are not visible).
> - If nmbd (and smbd) started, then SMB/Samba file sharing works at 100%

> As I explain, due to Wifi, network will come up only after boot (and after
> nmbd start).

Why would nmbd start before your network is up?

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Following your guidelines, I think I understand better how nmbd is behaving.

nmbd is started after a user logs in, and if the network-manager is running.

In fact, as I'm setting a server, I configured the Wifi so that it could connect with wpa_supplicant at the end of boot, but I did not use the network-manager for that (I used wpa_supplicant with configuration file).

Bad idea, as there seems to be some logic between network-manager and nmbd. nmbd starts when a net I/F goes up in this case.

And I need to have Wifi and nmbd running, even if no one is logged in.

So probably will have to cope with the network-manager, and see how I can configure Wifi (maybe with wpa_cli ?) to set the wlan interface through the network-manager. In this case, I hope seeing nmbd start automatically when the wifi interface comes up, as when a user logs into Gnome.

Thanks anyway for your help !

Nick_Hill (nick-nickhill) wrote :

Myself and a friend have both had to use Samba with IP addresses, until I found that by restarting nmbd, name resolution works again. (Ubuntu 10.04).

My machine automatically logs in. I don't use the network manager applet; I have DHCPd running on my server and use bridging.

Perhaps nmbd needs to start and continue irrespective of whether there are broadcast capable interfaces, and link to the interfaces when up.

I'll work around this bug by writing a script to start nmbd late in the boot process.

Steve Langasek (vorlon) wrote :

Hi Nick,

Does this mean that the first network interface that comes up on your system is not a broadcast interface?

We don't have a way to detect this from /etc/init/nmbd.conf. If you have a point-to-point interface coming up before your broadcast interfaces, that would definitely account for nmbd failing to start. You can always edit /etc/init/nmbd.conf for your needs, specifying a particular interface that it should wait for.

Nick_Hill (nick-nickhill) wrote :

There was bogus adapter information in /etc/network/interfaces . I removed that. Consequently, my computer failed to boot as the samba / nmbd script was waiting for a network event which would never happen. The only adapter listed in /etc/network/interfaces was lo, which would not generate the necessary trigger to start samba. Consequently, Init hung on waiting for the eth up event to start smbd and nmbd.

I noticed bridging events in the /etc/init directory, then discovered bridging functions are now 'formalised' in /etc/network/interfaces. I moved my configuration to there, then removed my original script from init. So my bridging now works properly, and via the formal method.

Since upstart could now bring my interfaces up, this has solved that problem.

So this is not a bug with samba, or the scripts because if the formal route to bridging is adopted, all works well.

This has, however, created another problem unrelated to this bug; DHCPd will not start. Apparently, upstart is trying to start DHCPd before the network interfaces are up. But that is OT here.

Nick_Hill (nick-nickhill) wrote :

Based on the above, perhaps the upstart script for samba / nmbd has a bug as the script will stop the system from booting if no net adapters come up. A preferred behaviour would be for nmbd to fail to start but let the machine boot.

Better still, if nmbd could have the same behaviour that smbd has, an that is to start and wait for a suitable adapter to come up.

Steve Langasek (vorlon) wrote :

It does not "stop the system from booting". nmbd is not required for a system to boot.

The upstart job is implemented to accurately declare nmbd's dependency on having a working network interface available. If you think nmbd should start even when no network is available, that is a non-trivial change in behavior that you would need to discuss with the upstream developers.

Nick_Hill (nick-nickhill) wrote :

Hi Steve. I observed that my Ubuntu 10.04 system would wait for an indefinite period at start-up if there was no available non-loopback interface available. I presumed this was a bug related to the upstart job for nmbd.

Nick_Hill (nick-nickhill) wrote :

I have performed a controlled experiment and can't replicate the behaviour, so it must have been a mis-diagnosis. Sorry.

tmstaedt (tmstaedt) wrote :

I also had this problem of occasional hangs during boot, when networking is configured on ubuntu karmic.
The hangs still occurred, even though I disabled samba via update-rc.d. Found out that samba-related
stuff is called in /etc/dhcp3/dhclient-enter-hooks.d/samba. The following patch may be related:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=572483

See also:
http://ubuntuforums.org/showthread.php?t=1382776
https://bugs.launchpad.net/ubuntu/+source/samba/+bug/462169

Clint Byrum (clint-fewbar) wrote :

I'm not entirely certain that this was actually fixed on lucid, despite the changelog entry added to 2:3.4.3-2ubuntu2 ...

I look at the package branch at that revision, and it does not install /etc/network/if-up.d/samba. Likewise, now that I see bug #836849 reported, it would appear that what happened was, the file was added, installed into the right place in debian/rules, but not added to debian/samba.files

+ mkdir -p $(DESTDIR)/etc/network/if-up.d
+ install -o root -g root debian/samba.if-up $(DESTDIR)/etc/network/if-up.d/samba

This just makes it go into $DESTDIR , but it would need to be in debian/samba.files to make it into the package.

Later, in a merge w/ Debian, this file *was* added to debian/samba.files

So, on a lucid system, smbd is not actually started on ifup.

Moving the status of the Lucid task back to "Triaged" based on this information, and marking bug #836849 as a duplicate of this bug.

Changed in samba (Ubuntu Lucid):
status: Fix Released → Triaged
milestone: lucid-alpha-3 → ubuntu-10.04.4
Steve Langasek (vorlon) wrote :

I don't know why this file is being installed in later versions. The reason it's not installed for lucid is seen here:

samba (2:3.4.5~dfsg-2ubuntu2) lucid; urgency=low

  * Switch smbd and nmbd over to upstart jobs, to ensure nmbd starts reliably
    after the network is up. LP: #523868.
  * Remove /etc/network/if-up.d/samba on upgrade, superseded by the above.

 -- Steve Langasek <email address hidden> Thu, 18 Feb 2010 12:51:45 +0000

I already tried to remove this ifupdown hook once before. It should be entirely irrelevant given the current nmbd start condition, and if it's not irrelevant, it's also not reliable because the same thing that triggers nmbd before the interface is really up will also call the ifupdown hooks.

And no, bug #836849 is not the same bug. The ifupdown hook was always about getting *nmbd* to start up; that bug is about smbd startup.

Changed in samba (Ubuntu Lucid):
milestone: ubuntu-10.04.4 → none
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.