[systemd-devel] Starting a script early in boot

Daniel Drake dsd at laptop.org
Mon Sep 6 18:44:54 PDT 2010


Hi,

First time user question...

The OLPC-Fedora distro needs to run a script early during boot. This
configures a few important things (particularly on first boot) such as
setting up the system locale and X config.

With sysvinit and its serialized nature, this was easy (just an init
script that ran really early).

Now I'm trying to port it to systemd.

The script needs the usual devices and mounts, but must be run *to
completion* before X and the other "regular services" are started.

After reading the systemd man pages, I believe I want it to start
after basic.target has fully started up, but before anything in
multi-user.target starts. And I want everything in multi-user.target
to await the completion of my script before starting.

So I came up with the olpc-configure.service:

[Unit]
Description=olpc-configure
After=basic.target
Before=multi-user.target

[Service]
Type=oneshot
ExecStart=/usr/bin/olpc-configure

[Install]
WantedBy=multi-user.target


And it doesn't work :(
Through adding some logging, I can see that NetworkManager, X, HAL,
... are all running during the execution of olpc-configure (I was
hoping they would wait).

Any hints?

Thanks,
Daniel


More information about the systemd-devel mailing list