diff options
author | Niko Mauno <niko.mauno@vaisala.com> | 2024-08-09 14:57:30 +0000 |
---|---|---|
committer | Steve Sakoman <steve@sakoman.com> | 2024-08-19 06:09:14 -0700 |
commit | 6b67a84d81c21738be8b3a043c0e32441b6a1d51 (patch) | |
tree | 53f42c9051361d069a864e4e3931227cc9941b05 | |
parent | 3866a30eeefac2925c1b1c1361289b02e1fed916 (diff) | |
download | poky-6b67a84d81c21738be8b3a043c0e32441b6a1d51.tar.gz |
systemd: Mitigate /var/log type mismatch issue
When VOLATILE_LOG_DIR evaluates as True, the base-files recipe provides
/var/log -> /var/volatile/log symlink which is in conflict with systemd
upstream tmpfiles.d/var.conf.in which defines it as a directory.
This generates following error in journal:
Jul 03 14:28:00 qemux86-64 systemd-tmpfiles[165]: "/var/log" already exists and is not a directory.
Mitigate the issue by defining /var/log as symlink corresponding to
the one created by base-files, when appropriate.
(From OE-Core rev: 711ee36e88c8968e3c45ea787b3adcf64352adf9)
(From OE-Core rev: b837d588de1ad76cbf8db3297dc51b0591a4df23)
Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
-rw-r--r-- | meta/recipes-core/systemd/systemd_255.4.bb | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/meta/recipes-core/systemd/systemd_255.4.bb b/meta/recipes-core/systemd/systemd_255.4.bb index f58a1bc2b6..0ccca8a567 100644 --- a/meta/recipes-core/systemd/systemd_255.4.bb +++ b/meta/recipes-core/systemd/systemd_255.4.bb | |||
@@ -307,9 +307,10 @@ do_install() { | |||
307 | fi | 307 | fi |
308 | 308 | ||
309 | if "${@'true' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR')) else 'false'}"; then | 309 | if "${@'true' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR')) else 'false'}"; then |
310 | # /var/log is typically a symbolic link to inside /var/volatile, | 310 | # base-files recipe provides /var/log which is a symlink to /var/volatile/log |
311 | # which is expected to be empty. | ||
312 | rm -rf ${D}${localstatedir}/log | 311 | rm -rf ${D}${localstatedir}/log |
312 | printf 'L\t\t%s/log\t\t-\t-\t-\t-\t%s/volatile/log\n' "${localstatedir}" \ | ||
313 | "${localstatedir}" >>${D}${nonarch_libdir}/tmpfiles.d/00-create-volatile.conf | ||
313 | elif [ -e ${D}${localstatedir}/log/journal ]; then | 314 | elif [ -e ${D}${localstatedir}/log/journal ]; then |
314 | chown root:systemd-journal ${D}${localstatedir}/log/journal | 315 | chown root:systemd-journal ${D}${localstatedir}/log/journal |
315 | 316 | ||