Also of note: several other packages failed with similar issues on my system, but with a failure on postinst rather than prerm. It seems a later version of invoke-rc.d "handles" this case:
$ sudo dpkg --configure -a [sudo] password for vorlon: Setting up modemmanager (1.4.10-1) ... Setting up nfs-common (1:1.2.8-9ubuntu9) ... invoke-rc.d: gssd.service doesn't exist but the upstart job does. Nothing to start or stop until a systemd or init job is present. invoke-rc.d: idmapd.service doesn't exist but the upstart job does. Nothing to start or stop until a systemd or init job is present. So an upgrade solution may be to pre-depend on the newer invoke-rc.d. -- 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/1485396 Title: impossible to upgrade package from vivid to wily because of maintainer script reference to upstart job without matching init script Status in isc-dhcp package in Ubuntu: Triaged Bug description: The isc-dhcp-server package is not upgradable on a real machine (vs. a chroot) in vivid or wily, because it installs two upstart jobs in the usual debhelper way, but only one of them has a matching init script. As a result, on a system with systemd as init, isc-dhcp-server will fail to even unpack over a running system: Preparing to unpack .../isc-dhcp-server_4.3.1-5ubuntu3_amd64.deb ... initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused invoke-rc.d: unknown initscript, /etc/init.d/isc-dhcp-server6 not found. dpkg: warning: subprocess old pre-removal script returned error exit status 100 dpkg: trying script from the new package instead ... initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused invoke-rc.d: unknown initscript, /etc/init.d/isc-dhcp-server6 not found. dpkg: error processing archive /var/cache/apt/archives/isc-dhcp-server_4.3.1-5ubuntu3_amd64.deb (--unpack): subprocess new pre-removal script returned error exit status 100 This is because both new and old packages include the following in the prerm: # Automatically added by dh_installinit if [ -x "/etc/init.d/isc-dhcp-server6" ] || [ -e "/etc/init/isc-dhcp-server6.conf" ]; then invoke-rc.d isc-dhcp-server6 stop || exit $? fi # End automatically added section This code will never succeed on a system running systemd. It may be that debhelper's behavior here should be changed. However, as we have two upstart jobs in the package for a reason, I think the more important fix is to split the init script. This will then also require some particular upgrade handling in the prerm since the prerm runs before any new /etc/init.d/isc-dhcp-server6 script would be unpacked. It's also worth noting that this problem was apparently not picked up by the reports about packages missing init scripts; presumably because the isc-dhcp-server has an init script, but not init scripts matching all of the included upstart jobs. https://people.canonical.com/~jhunt/systemd/packages-to-convert/2015-08-17.txt ProblemType: Bug DistroRelease: Ubuntu 15.10 Package: isc-dhcp-server 4.3.1-5ubuntu2.2 ProcVersionSignature: Ubuntu 3.19.0-25.26-generic 3.19.8-ckt2 Uname: Linux 3.19.0-25-generic x86_64 ApportVersion: 2.18-0ubuntu6 Architecture: amd64 CurrentDesktop: Unity Date: Mon Aug 17 02:58:14 2015 InstallationDate: Installed on 2010-09-24 (1787 days ago) InstallationMedia: Ubuntu 10.04.1 LTS "Lucid Lynx" - Release amd64 (20100816.1) SourcePackage: isc-dhcp UpgradeStatus: Upgraded to wily on 2015-08-17 (0 days ago) modified.conffile..etc.dhcp.dhcpd.conf: [modified] mtime.conffile..etc.dhcp.dhcpd.conf: 2013-09-19T21:48:37.910820 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/1485396/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp