diff -Nru isc-dhcp-4.4.1/debian/changelog isc-dhcp-4.4.1/debian/changelog --- isc-dhcp-4.4.1/debian/changelog 2021-05-27 06:59:48.000000000 +0200 +++ isc-dhcp-4.4.1/debian/changelog 2022-04-08 20:56:46.000000000 +0200 @@ -1,3 +1,10 @@ +isc-dhcp (4.4.1-2.4) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Ignore stale pidfile in /etc/init.d/isc-dhcp-server on start. + + -- H.-Dirk Schmitt Fri, 08 Apr 2022 20:56:46 +0200 + isc-dhcp (4.4.1-2.3) unstable; urgency=high * Non-maintainer upload. diff -Nru isc-dhcp-4.4.1/debian/isc-dhcp-server.init.d isc-dhcp-4.4.1/debian/isc-dhcp-server.init.d --- isc-dhcp-4.4.1/debian/isc-dhcp-server.init.d 2021-05-27 06:59:48.000000000 +0200 +++ isc-dhcp-4.4.1/debian/isc-dhcp-server.init.d 2022-04-08 20:56:46.000000000 +0200 @@ -100,8 +100,12 @@ log_daemon_msg "Starting $DESC" "$NAME" if [ -e "$PIDFILE" ]; then - log_failure_msg "dhcpd service already running (pid file $PIDFILE currenty exists)" - exit 1 + if ps -p "$pid" > /dev/null 2>&1; then + log_failure_msg "dhcpd service already running (pid file $PIDFILE currenty exists)" + exit 1 + else + echo "ingore stale pid file $PIDFILE" + fi fi touch /var/lib/dhcp/$NAME.leases diff -Nru isc-dhcp-4.4.1/debian/patches/fix-initd-stale-pidfile.patch isc-dhcp-4.4.1/debian/patches/fix-initd-stale-pidfile.patch --- isc-dhcp-4.4.1/debian/patches/fix-initd-stale-pidfile.patch 1970-01-01 01:00:00.000000000 +0100 +++ isc-dhcp-4.4.1/debian/patches/fix-initd-stale-pidfile.patch 2022-04-08 20:56:46.000000000 +0200 @@ -0,0 +1,19 @@ +Index: isc-dhcp-4.4.1/debian/isc-dhcp-server.init.d +=================================================================== +--- isc-dhcp-4.4.1.orig/debian/isc-dhcp-server.init.d ++++ isc-dhcp-4.4.1/debian/isc-dhcp-server.init.d +@@ -100,8 +100,12 @@ start_daemon() + log_daemon_msg "Starting $DESC" "$NAME" + + if [ -e "$PIDFILE" ]; then +- log_failure_msg "dhcpd service already running (pid file $PIDFILE currenty exists)" +- exit 1 ++ if ps -p "$pid" > /dev/null 2>&1; then ++ log_failure_msg "dhcpd service already running (pid file $PIDFILE currenty exists)" ++ exit 1 ++ else ++ echo "ingore stale pid file $PIDFILE" ++ fi + fi + + touch /var/lib/dhcp/$NAME.leases