touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #17062
[Bug 1368688] [NEW] Inconsistence between /etc/init and /etc/init.d files
Public bug reported:
After upgrade Ubuntu server from 12.04 LTS to 14.04 LTS (with do-release-upgrade) I found a strange behavior in /var/log/messages from isc-dhcp-server. It had doubled DHCPREQUESTS/OFFERS/ACKs... It was like:
~~
dhcpd: DHCPDISCOVER from 00:0b:82:27:be:d1 via eth0
dhcpd: DHCPDISCOVER from 00:0b:82:27:be:d1 via eth0
DHCPREQUEST for 192.168.1.102 (10.112.1.252) from 00:0b:82:27:be:d1 via eth0
DHCPREQUEST for 192.168.1.102 (10.112.1.252) from 00:0b:82:27:be:d1 via eth0
DHCPACK on 192.168.1.102 to 00:0b:82:27:be:d1 via eth0
DHCPACK on 192.168.1.102 to 00:0b:82:27:be:d1 via eth0
~~
Futher investigation show that there was actually two dhcpd processes:
~~
dhcpd -q -cf /etc/dhcp/dhcpd.conf -pf /var/run/dhcp-server/dhcpd.pid
/usr/sbin/dhcpd -q -cf /etc/dhcp/dhcpd.conf -pf /var/run/dhcpd.pid
~~
The first one was executed from "/etc/init/isc-dhcp-server.conf" and second from "/etc/init.d/isc-dhcp-server".
Looking inside "init/isc-dhcp-server.conf" I found:
~~
respawn
script
. /etc/default/isc-dhcp-server
......
exec dhcpd -user dhcpd -group dhcpd -f -q -4 -pf /run/dhcp-server/dhcpd.pid -cf $CONFIG_FILE $INTERFACES
~~
As you can see path to PID file is hardcoded.
But in "init.d/isc-dhcp-server" startup script:
~~
# try to read pid file name from config file, with fallback to /var/run/dhcpd.pid
if [ -z "$DHCPD_PID" ]; then
DHCPD_PID=$(sed -n -e 's/^[ \t]*pid-file-name[ \t]*"(.*)"[ \t]*;.*$/\1/p' < "$DHCPD_CONF" 2>/dev/null | head -n 1)
fi
DHCPD_PID="${DHCPD_PID:-/var/run/dhcpd.pid}"
......
case "$1" in
start)
test_config
log_daemon_msg "Starting $DESC" "$NAME"
start-stop-daemon --start --quiet --pidfile "$DHCPD_PID" \
--exec /usr/sbin/dhcpd -- \
-q $OPTIONS -cf "$DHCPD_CONF" -pf "$DHCPD_PID" $INTERFACES
~~
** Affects: isc-dhcp (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to isc-dhcp in Ubuntu.
https://bugs.launchpad.net/bugs/1368688
Title:
Inconsistence between /etc/init and /etc/init.d files
Status in “isc-dhcp” package in Ubuntu:
New
Bug description:
After upgrade Ubuntu server from 12.04 LTS to 14.04 LTS (with do-release-upgrade) I found a strange behavior in /var/log/messages from isc-dhcp-server. It had doubled DHCPREQUESTS/OFFERS/ACKs... It was like:
~~
dhcpd: DHCPDISCOVER from 00:0b:82:27:be:d1 via eth0
dhcpd: DHCPDISCOVER from 00:0b:82:27:be:d1 via eth0
DHCPREQUEST for 192.168.1.102 (10.112.1.252) from 00:0b:82:27:be:d1 via eth0
DHCPREQUEST for 192.168.1.102 (10.112.1.252) from 00:0b:82:27:be:d1 via eth0
DHCPACK on 192.168.1.102 to 00:0b:82:27:be:d1 via eth0
DHCPACK on 192.168.1.102 to 00:0b:82:27:be:d1 via eth0
~~
Futher investigation show that there was actually two dhcpd processes:
~~
dhcpd -q -cf /etc/dhcp/dhcpd.conf -pf /var/run/dhcp-server/dhcpd.pid
/usr/sbin/dhcpd -q -cf /etc/dhcp/dhcpd.conf -pf /var/run/dhcpd.pid
~~
The first one was executed from "/etc/init/isc-dhcp-server.conf" and second from "/etc/init.d/isc-dhcp-server".
Looking inside "init/isc-dhcp-server.conf" I found:
~~
respawn
script
. /etc/default/isc-dhcp-server
......
exec dhcpd -user dhcpd -group dhcpd -f -q -4 -pf /run/dhcp-server/dhcpd.pid -cf $CONFIG_FILE $INTERFACES
~~
As you can see path to PID file is hardcoded.
But in "init.d/isc-dhcp-server" startup script:
~~
# try to read pid file name from config file, with fallback to /var/run/dhcpd.pid
if [ -z "$DHCPD_PID" ]; then
DHCPD_PID=$(sed -n -e 's/^[ \t]*pid-file-name[ \t]*"(.*)"[ \t]*;.*$/\1/p' < "$DHCPD_CONF" 2>/dev/null | head -n 1)
fi
DHCPD_PID="${DHCPD_PID:-/var/run/dhcpd.pid}"
......
case "$1" in
start)
test_config
log_daemon_msg "Starting $DESC" "$NAME"
start-stop-daemon --start --quiet --pidfile "$DHCPD_PID" \
--exec /usr/sbin/dhcpd -- \
-q $OPTIONS -cf "$DHCPD_CONF" -pf "$DHCPD_PID" $INTERFACES
~~
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/1368688/+subscriptions
Follow ups
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Carlos Vicente, 2015-11-25
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Evren Yurtesen, 2015-05-26
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: John Center, 2015-05-21
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Serge van Ginderachter, 2015-01-21
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Joi Ellis, 2014-10-23
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Launchpad Bug Tracker, 2014-09-28
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Peter Silva, 2014-09-28
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Peter Silva, 2014-09-28
-
[Bug 1368688] Re: Inconsistence between /etc/init and /etc/init.d files
From: Artyom, 2014-09-12
-
[Bug 1368688] [NEW] Inconsistence between /etc/init and /etc/init.d files
From: Artyom, 2014-09-12
References