[Pkg-sysvinit-devel] Bug#734766: invoke-rc.d should also handle socket units during start/stop
Apollon Oikonomopoulos
apoikos at gmail.com
Thu Jan 9 17:57:49 UTC 2014
Package: sysv-rc
Version: 2.88dsf-45
Severity: normal
Dear Maintainer,
Currently invoke-rc.d will wrap starting/stopping any service with a
corresponding systemd service unit file in a systemctl call. This works
well with most services, however if a service supports socket activation
and ships a socket unit, the socket will not be started/stopped during
these operations.
In the case of stop, this means that the service is not effectively
stopped, but instead restarted, since it will be re-activated on the
next connection. This is especially important for maintainer scripts,
since dh_systemd_start will not perform any start/stop/restart dance if
an init script is present, and will defer the job to invoke-rc.d instead
(which only stops the service, not the socket).
Although there are unit-side workarounds for this (e.g. adding PartOf=
to the socket unit definition), IMHO the desired behavior would be to
detect if the service has a corresponding socket enabled, and start/stop
this as well. For the record, this is also the behavior currently
implemented by service(8) (which also checks that the socket actually
triggers the given service).
Regards,
Apollon
More information about the Pkg-sysvinit-devel
mailing list