The systemd configuration in OE-core follows OE-core conventions where /var/tmp and /var/log are symlinks into /var/volatile, which gets mounted via 00-create-volatile.conf. That works, but there are log messages about the setup in the systemd journal: # journalctl | grep tmp Apr 08 08:12:10 192.168.7.2 kernel: devtmpfs: initialized Apr 08 08:12:10 192.168.7.2 systemd-tmpfiles[696]: [/usr/lib/tmpfiles.d/etc.conf:16] Duplicate line for path "/etc/resolv.conf", ignoring. Apr 08 08:12:10 192.168.7.2 systemd-tmpfiles[696]: "/var/tmp" already exists and is not a directory. Apr 08 08:12:10 192.168.7.2 systemd-tmpfiles[696]: "/var/log" already exists and is not a directory. These messages can be confusing when investigating boot issues: they are harmless, but not everyone knows that. It would be better to change the systemd configuration files so that these messages are avoided.
Patrick, can you include a copy of your /usr/lib/tmpfiles.d/etc.conf file? The version in master has only 14 lines in it, while yours appears to have 16 lines (at least).
Here's what I have: # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # See tmpfiles.d(5) for details L /etc/os-release - - - - ../usr/lib/os-release L /etc/localtime - - - - ../usr/share/zoneinfo/UTC L+ /etc/mtab - - - - ../proc/self/mounts t /etc/mtab - - - - security.SMACK64=_ C /etc/nsswitch.conf - - - - C /etc/pam.d - - - - L! /etc/resolv.conf - - - - ../run/resolv.conf Note that we enable pam in Ostro OS. That perhaps explains at least one additional line (/etc/pam.d). resolv.conf is also conditional, checking PACKAGECONFIG resolved (seen in meta/recipes-core/systemd/systemd_229.bb).
Thanks. I have a fix for the /var/tmp and /var/log directory exists warnings. The duplicate entry for resolv.conf is there because (at least in my config) the connman package installs a systemd config file in /etc/tmpfiles.d which also has a rule for /etc/resolv.conf. There's really no easy way around that particular warning short of adding a conditional in /usr/lib/tmpfiles.d/etc.conf to check if connman is installed. I'm not sure we want to go to that effort.
Patch send to oe-core mailing list to fix the "directory exits" warning messages. As previously mentioned, you will still see the warning for duplicate /etc/resolv.conf entries, but I think this is reasonable.
Patch was submitted but not merged http://lists.openembedded.org/pipermail/openembedded-core/2016-April/120308.html
Ross rejected the patch with a comment: http://lists.openembedded.org/pipermail/openembedded-core/2016-July/124013.html . I believe the patch solves this specific bug, but multiple systemd patches have come in since April and perhaps it's not exactly right anymore. The OE files file does specify some specific rules for using /volatile instead of /var and I was trying to work within that framework. There was an ordering problem, for sure, where a subdir creation was attempted before the /volatile directory was created (as I recall) which caused the error messages the bug submitter saw.
This issue has been solved in system already. Not reproducible with kiskstone.