[systemd-devel] starting systemd from busybox initrd

Leo Baltus Leo.Baltus at omroep.nl
Mon Mar 26 08:02:42 PDT 2012


Hi,

I am in the process of setting up a fairly standard busybox to act as
an initrd and rescue environment. The idea is to use a fedora kernel in
which all boot-time needed modules are compiled in so we can boot all of
our hardware from the same initrd.

The initrd is supposed to do some boot-time checks and if all checks
succeed switch_root to the os-image or else start busybox.

We have used this setup successfully for quite a while with traditional
init's and upstart and would like to use this in combination with
systemd as well.

However on startup my fedora-16 system seems to timeout on something and
drops me to sulogin.

The setup uses a separate /var which is a logical-volume which is not
mounted by systemd. If I add 'mount /var' at the the of 
/lib/systemd/fedora-storage-init the mount succeeds and the system boots up.

basically it passes 
* /dev/ as a devtmpfs with /dev/mapper and /dev/$volumegroup populated 
  by what mdev (from busybox) has found.
* /dev/pts
* /dev/shm
* /proc and /sys
* /run populated by /run fromrootfs

Here is what the console says:
[ 3323.704330] fedora-storage-init[418]: Setting up Logical Volume Management:   4 logical volume(s) in volume group "rootvg" now active
Started Initialize storage subsystems (RAID, LVM, etc.).
Starting Initialize storage subsystems (RAID, LVM, etc.)...
[ 3323.715296] fedora-storage-init[418]: [  OK  ]
[ 3323.814747] fedora-storage-init[426]: Setting up Logical Volume Management:   4 logical volume(s) in volume group "rootvg" now active
Started Initialize storage subsystems (RAID, LVM, etc.).
Starting Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling...
[ 3323.830191] fedora-storage-init[426]: [  OK  ]
[ 3323.868762] lvm[433]: 4 logical volume(s) in volume group "rootvg" monitored
Started Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling.
[ 3410.674351] systemd[1]: Job dev-mapper-rootvg\x2dfc16_64var.device/start timed out.
Starting /var aborted because a dependency failed.
Starting Lock Directory aborted because a dependency failed.
[ 3410.678878] systemd[1]: Job var-lock.mount/start failed with result 'dependency'.


Here is what dmesg says after a 'systemctl start var.mount':

[ 3584.206249] systemd[1]: Job dev-mapper-rootvg\x2dfc16_64var.device/start timed out.
A dependency job failed. See system logs for details.
[root at leo-virt2 ~]# [ 3584.212365] systemd[1]: Job var.mount/start failed with result 'dependency'.
[ 3584.214447] systemd[1]: Job fsck at dev-mapper-rootvg\x2dfc16_64var.service/start failed with result 'dependency'.
[ 3584.217263] systemd[1]: Job dev-mapper-rootvg\x2dfc16_64var.device/start failed with result 'timeout'.

[root at leo-virt2 ~]# dmesg
[ 3494.202166] systemd[1]: Accepted connection on private bus.
[ 3494.202181] systemd[1]: Running GC...
[ 3494.205874] systemd[1]: Got D-Bus request: org.freedesktop.systemd1.Manager.StartUnit() on /org/freedesktop/systemd1
[ 3494.205917] systemd[1]: Trying to enqueue job var.mount/start/replace
[ 3494.205997] systemd[1]: Installed new job var.mount/start as 253
[ 3494.206044] systemd[1]: Installed new job fsck at dev-mapper-rootvg\x2dfc16_64var.service/start as 256
[ 3494.206071] systemd[1]: Installed new job dev-mapper-rootvg\x2dfc16_64var.device/start as 257
[ 3494.206123] systemd[1]: Enqueued job var.mount/start as 253
[ 3494.206465] systemd[1]: Got D-Bus request: org.freedesktop.systemd1.Manager.GetUnit() on /org/freedesktop/systemd1
[ 3494.206614] systemd[1]: Got D-Bus request: org.freedesktop.DBus.Properties.Get() on /org/freedesktop/systemd1/unit/var_2emount
[ 3584.206249] systemd[1]: Job dev-mapper-rootvg\x2dfc16_64var.device/start timed out.
[ 3584.208459] systemd[1]: Job dev-mapper-rootvg\x2dfc16_64var.device/start finished, result=timeout
[ 3584.208493] systemd[1]: Job var.mount/start finished, result=dependency
[ 3584.212365] systemd[1]: Job var.mount/start failed with result 'dependency'.
[ 3584.214401] systemd[1]: Job fsck at dev-mapper-rootvg\x2dfc16_64var.service/start finished, result=dependency
[ 3584.214447] systemd[1]: Job fsck at dev-mapper-rootvg\x2dfc16_64var.service/start failed with result 'dependency'.
[ 3584.217263] systemd[1]: Job dev-mapper-rootvg\x2dfc16_64var.device/start failed with result 'timeout'.
[ 3584.220062] systemd[1]: Got D-Bus request: org.freedesktop.DBus.Local.Disconnected() on /org/freedesktop/DBus/Local

Could somebody care to explain what systemd is timing out on, or how to
find the culprit?

-- 
Leo Baltus, internetbeheerder                         /\
NPO ICT Internet Services                            /NPO/\
Sumatralaan 45, 1217 GP Hilversum, Filmcentrum, west \  /\/
beheer at omroep.nl, 035-6773555                         \/


More information about the systemd-devel mailing list