enterprise-support team mailing list archive
-
enterprise-support team
-
Mailing list archive
-
Message #03427
[Bug 1321369] [NEW] /etc/init.d/samba starts smbd/nmbd improperly
Public bug reported:
The /etc/init.d/samba script appears to try and start smbd/nmbd
improperly. If a user types "service samba restart" here is the
behavior:
root@cups:~# service samba restart
root@cups:~# echo $?
1
I tried to track down the problem a bit by putting "set -x" on the init
script:
root@cups:~# service samba start
+ /etc/init.d/nmbd start
So the nmbd init script appears to be exiting improperly without any
output. After putting set -x on /etc/init.d/nmbd:
root@cups:~# service samba start
+ /etc/init.d/nmbd start
+ PIDDIR=/var/run/samba
+ NMBDPID=/var/run/samba/nmbd.pid
+ unset TMPDIR
+ test -x /usr/sbin/nmbd
+ . /lib/lsb/init-functions
+ run-parts --lsbsysinit --list /lib/lsb/init-functions.d
+ [ -r /lib/lsb/init-functions.d/20-left-info-blocks ]
+ . /lib/lsb/init-functions.d/20-left-info-blocks
+ [ -r /lib/lsb/init-functions.d/50-ubuntu-logging ]
+ . /lib/lsb/init-functions.d/50-ubuntu-logging
+ LOG_DAEMON_MSG=
+ FANCYTTY=
+ [ -e /etc/lsb-base-logging.sh ]
+ true
+ init_is_upstart
+ [ -x /sbin/initctl ]
+ /bin/grep -q upstart
+ /sbin/initctl version
+ return 0
+ exit 1
Looking at /etc/init.d/nmbd:
24 case $1 in
25 start)
26 if init_is_upstart; then
27 exit 1
28 fi
And if we look at how /etc/init.d/samba start nmbd we can see why it
exits at this point:
16 case $1 in
17 start)
18 /etc/init.d/nmbd start
19 /etc/init.d/smbd start
20 /etc/init.d/samba-ad-dc start
Please note /etc/init.d/smbd also has a similar call to init_is_upstart.
Here's the behavior of all the init scripts in question when both smbd
and nmbd are stopped initially:
root@cups:~# /etc/init.d/nmbd start; echo $?
1
root@cups:~# /etc/init.d/smbd start; echo $?
1
root@cups:~# /etc/init.d/samba start; echo $?
1
root@cups:~# service nmbd start; echo $?
nmbd start/running, process 32731
0
root@cups:~# service smbd start; echo $?
smbd start/running, process 32741
0
root@cups:~# service smbd stop; echo $?
smbd stop/waiting
0
root@cups:~# service nmbd stop; echo $?
nmbd stop/waiting
0
root@cups:~# service samba start; echo $?
1
Expected behavior:
Calling "/etc/init.d/{smbd,nmbd} start" exits 1 and prints a short
message to stderr explaining that the user should be using "service
{smbd,nmbd} start".
Calling "service samba start" exits 0 and successfully starts smbd and
nmbd.
ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: samba 2:4.1.6+dfsg-1ubuntu2.14.04.1
ProcVersionSignature: Ubuntu 3.13.0-24.46-generic 3.13.9
Uname: Linux 3.13.0-24-generic x86_64
ApportVersion: 2.14.1-0ubuntu3
Architecture: amd64
Date: Tue May 20 12:20:34 2014
InstallationDate: Installed on 2014-05-16 (3 days ago)
InstallationMedia: Ubuntu-Server 14.04 LTS "Trusty Tahr" - Release amd64 (20140416.2)
OtherFailedConnect: Yes
ProcEnviron:
TERM=xterm
PATH=(custom, no user)
XDG_RUNTIME_DIR=<set>
LANG=en_US.UTF-8
SHELL=/bin/bash
SambaServerRegression: No
SmbConfIncluded: No
SourcePackage: samba
UpgradeStatus: No upgrade log present (probably fresh install)
modified.conffile..etc.init.d.nmbd: [modified]
modified.conffile..etc.init.d.samba: [modified]
mtime.conffile..etc.init.d.nmbd: 2014-05-20T12:11:20.828235
mtime.conffile..etc.init.d.samba: 2014-05-20T12:11:08.484234
** Affects: samba (Ubuntu)
Importance: Undecided
Status: New
** Tags: amd64 apport-bug trusty
** Description changed:
The /etc/init.d/samba script appears to try and start smbd/nmbd
improperly. If a user types "service samba restart" here is the
behavior:
root@cups:~# service samba restart
root@cups:~# echo $?
1
I tried to track down the problem a bit by putting "set -x" on the init
script:
root@cups:~# service samba start
+ /etc/init.d/nmbd start
So the nmbd init script appears to be exiting improperly without any
output. After putting set -x on /etc/init.d/nmbd:
root@cups:~# service samba start
+ /etc/init.d/nmbd start
+ PIDDIR=/var/run/samba
+ NMBDPID=/var/run/samba/nmbd.pid
+ unset TMPDIR
+ test -x /usr/sbin/nmbd
+ . /lib/lsb/init-functions
+ run-parts --lsbsysinit --list /lib/lsb/init-functions.d
+ [ -r /lib/lsb/init-functions.d/20-left-info-blocks ]
+ . /lib/lsb/init-functions.d/20-left-info-blocks
+ [ -r /lib/lsb/init-functions.d/50-ubuntu-logging ]
+ . /lib/lsb/init-functions.d/50-ubuntu-logging
+ LOG_DAEMON_MSG=
+ FANCYTTY=
+ [ -e /etc/lsb-base-logging.sh ]
+ true
+ init_is_upstart
+ [ -x /sbin/initctl ]
+ /bin/grep -q upstart
+ /sbin/initctl version
+ return 0
+ exit 1
Looking at /etc/init.d/nmbd:
- 24 case $1 in
- 25 start)
- 26 if init_is_upstart; then
- 27 exit 1
- 28 fi
+ 24 case $1 in
+ 25 start)
+ 26 if init_is_upstart; then
+ 27 exit 1
+ 28 fi
And if we look at how /etc/init.d/samba start nmbd we can see why it
exits at this point:
- 16 case $1 in
- 17 start)
- 18 /etc/init.d/nmbd start
- 19 /etc/init.d/smbd start
- 20 /etc/init.d/samba-ad-dc start
+ 16 case $1 in
+ 17 start)
+ 18 /etc/init.d/nmbd start
+ 19 /etc/init.d/smbd start
+ 20 /etc/init.d/samba-ad-dc start
Please note /etc/init.d/smbd also has a similar call to init_is_upstart.
Here's the behavior of all the init scripts in question when both smbd
and nmbd are stopped initially:
- root@cups:~# /etc/init.d/nmbd start; echo $?
- 1
- root@cups:~# /etc/init.d/smbd start; echo $?
- 1
root@cups:~# /etc/init.d/nmbd start; echo $?
1
root@cups:~# /etc/init.d/smbd start; echo $?
1
root@cups:~# /etc/init.d/samba start; echo $?
1
root@cups:~# service nmbd start; echo $?
nmbd start/running, process 32731
0
root@cups:~# service smbd start; echo $?
smbd start/running, process 32741
0
root@cups:~# service smbd stop; echo $?
smbd stop/waiting
0
root@cups:~# service nmbd stop; echo $?
nmbd stop/waiting
0
root@cups:~# service samba start; echo $?
1
Expected behavior:
Calling "/etc/init.d/{smbd,nmbd} start" exits 1 and prints a short
message to stderr explaining that the user should be using "service
{smbd,nmbd} start".
Calling "service samba start" exits 0 and successfully starts smbd and
nmbd.
ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: samba 2:4.1.6+dfsg-1ubuntu2.14.04.1
ProcVersionSignature: Ubuntu 3.13.0-24.46-generic 3.13.9
Uname: Linux 3.13.0-24-generic x86_64
ApportVersion: 2.14.1-0ubuntu3
Architecture: amd64
Date: Tue May 20 12:20:34 2014
InstallationDate: Installed on 2014-05-16 (3 days ago)
InstallationMedia: Ubuntu-Server 14.04 LTS "Trusty Tahr" - Release amd64 (20140416.2)
OtherFailedConnect: Yes
ProcEnviron:
- TERM=xterm
- PATH=(custom, no user)
- XDG_RUNTIME_DIR=<set>
- LANG=en_US.UTF-8
- SHELL=/bin/bash
+ TERM=xterm
+ PATH=(custom, no user)
+ XDG_RUNTIME_DIR=<set>
+ LANG=en_US.UTF-8
+ SHELL=/bin/bash
SambaServerRegression: No
SmbConfIncluded: No
SourcePackage: samba
UpgradeStatus: No upgrade log present (probably fresh install)
modified.conffile..etc.init.d.nmbd: [modified]
modified.conffile..etc.init.d.samba: [modified]
mtime.conffile..etc.init.d.nmbd: 2014-05-20T12:11:20.828235
mtime.conffile..etc.init.d.samba: 2014-05-20T12:11:08.484234
--
You received this bug notification because you are a member of Ubuntu
Server/Client Support Team, which is subscribed to samba in Ubuntu.
Matching subscriptions: Ubuntu Server/Client Support Team
https://bugs.launchpad.net/bugs/1321369
Title:
/etc/init.d/samba starts smbd/nmbd improperly
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/samba/+bug/1321369/+subscriptions
Follow ups
References