[systemd-devel] troubleshooting different behaviour of systemd between f16 and f18

Thierry Parmentelat thierry.parmentelat at inria.fr
Mon Feb 11 04:37:08 PST 2013

Feel free to redirect me to some other place if needed :)

So, we have a BootCD that is intended for remotely managed machines
In a nutshell, we need to redefine the whole init sequence, and what we had on f12 and f14 boxes was essentially a set of 2 init scripts, one for rough system initialization (pl_sysinit), and one for downloading a stage2 python script (pl_boot), in this order of course

I'd done the job of adapting to systemd for f16 at the time; my approach had been as simple as it gets (for legacy reasons we're going to have the 2 scripts around anyway, so optimizing all that in a systemd-specific way is not yet in order unfortunately)
So in the boot image I had only

* created(replaced?) a symlink 
# ls -l /etc/systemd/system/default.target
lrwxrwxrwx 1 root root 34 Feb 11 08:12 /etc/systemd/system/default.target -> /etc/systemd/system/pl_boot.target

* and added 2 files
==> /etc/systemd/system/pl_boot.service <==
Description=pl_boot service


==> /etc/systemd/system/pl_boot.target <==
Description=pl_boot BootCD default target

This above turned out to work just fine in f16, and I was confident it would work the same in f18, but as a matter of fact it does not, and I'm trying to understand why

The output of a f16 box can be seen here

OTOH with f18 we're getting this
looks like systemd tries and runs pl_boot without running pl_sysinit first (which I would expect because of the ExecStartPre), so pl_boot gets stuck.

Troubleshooting this is painful because the boot sequence gets suck in the middle and there's no way to enter the node; so the best I can do at this point is to extract the boot image somewhere, but once I chroot in there I essentially can use systemctl only for a very few commands, as others  fail with:
Failed to get D-Bus connection: No connection to service manager.

Regardless, here's what I was able to probe in the 2 images;

--------------- fedora16
[2013.02.11--lxc16] /etc/systemd/system # cat /etc/fedora-release 
Fedora release 16 (Verne)
[2013.02.11--lxc16] /etc/systemd/system # systemctl --version
systemd 37
[2013.02.11--lxc16] /etc/systemd/system # systemctl is-enabled pl_boot.service && echo OK
[2013.02.11--lxc16] /etc/systemd/system # 

--------------- fedora18
[2013.02.11--lxc18] /etc/systemd/system # cat /etc/fedora-release 
Fedora release 18 (Spherical Cow)
[2013.02.11--lxc18] /etc/systemd/system # systemctl --version
systemd 197
[2013.02.11--lxc18] /etc/systemd/system # systemctl is-enabled pl_boot.service && echo OK


Any insight as to what can be happening here would be most welcome 

More information about the systemd-devel mailing list