[systemd-devel] Vendor default masked service

Umut Tezduyar Lindskog umut at tezduyar.com
Tue May 26 02:53:53 PDT 2015


Hi,

I was wondering if we have a way to provide vendor default masked service?

Vendor default masked service has advantages like:
 - systemctl start won't work
 - dbus activation won't work

It is common that an embedded system doesn't use packages, rather it
ships everything in monolithic image. Enabling, disabling, presetting
is great to prevent a service from starting as part of the target but
it doesn't stop anyone trying to start it with systemd (systemctl
start, or dbus activation).

I have come up with my way but obviously "systemctl unmask" doesn't
mean anything in this case. I was wondering if there is a way I am not
aware of.

/usr/lib/systemd/system:
aa.service: Service file implementation
a.target.wants/a.service: Start the service with a.target.
a.service: Can either be a link to aa.service (start the service) or
/dev/null (service is masked, won't start).

If the service is masked (a.service -> /dev/null), to enable it we
need to create (/etc/systemd/system/a.service ->
/usr/lib/systemd/system/aa.service).

Umut


More information about the systemd-devel mailing list