[systemd-devel] oneshot service

Lennart Poettering lennart at poettering.net
Mon Jul 27 18:01:37 PDT 2015


On Tue, 07.07.15 13:04, Ernast Sevo (ersevs at gmail.com) wrote:

> Apologies that was mistakenly sent. The example service is below.
> 
> [Unit]
> Before=local-fs.target
> After=<some service>
> DefaultDependencies=false
> 
> [Service]
> Type=oneshot
> ExecStart=/usr/bin/xxx
> RemainAfterExit=yes
> 
> [Install]
> WantedBy=local-fs.target
> 
> The problem is I can see boot-up continue prior to this service doing
> its job. I am not sure if I am missing
> something but I haven't come across anything in the documentation that
> can help. The service finishes its job
> later but something's that depend on it have already failed and have
> not waited for it to finish doing what it is doing.
> 
> Any thoughts as to what could be causing this?

Maybe your /usr/bin/xxx binary forks something into the background and
returns in the parent? systemd only cares about the process it starts
when Type=oneshot it used. Make sure your process doesn't daemonize
when you use Type=oneshot.

Or maybe you are missing the dependencies towards the services that
shall be started afterwards, and hence systemd proceeds immediately
with their execution, right away.

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list