embedded-linuxyoctobitbakeopenembedded

How to make /var/log persistent in Yocto Fido (poky)


I'm trying to get /var/log to be persistent in my fido build. The default setting on poky is, that there is a symlink in /var which points log -> volatile/log. volatile is a mounted on a tmpfs.

So far i figured out that the symlink should be created by the base-files recipe:

volatiles = "log tmp"

do_install () {
  ...
    for d in ${volatiles}; do
        ln -sf volatile/$d ${D}${localstatedir}/$d
    done
  ...

I appended the base-files recipe so the link was not created, but it still turned up in my rootfs. So where does it come from? I suspect that maybe the fs-perms.txt has something to do with it. But i tried to create one without the

${localstatedir}/log    link    volatile/log

line and it still created that link. Any clues?


Solution

  • A persistent log data option has made it in Yocto 2.4: https://bugzilla.yoctoproject.org/show_bug.cgi?id=6132

    Log data can now be made persistent by defining the following in your distro config:

    VOLATILE_LOG_DIR = "no"