chiark / gitweb /
nspawn: allow to bind mount journal on top of a non empty container journal dentry
authorDjalal Harouni <tixxdz@opendz.org>
Fri, 11 Apr 2014 00:45:52 +0000 (01:45 +0100)
committerLennart Poettering <lennart@poettering.net>
Thu, 22 May 2014 00:55:23 +0000 (09:55 +0900)
Currently if nspawn was called with --link-journal=host or
--link-journal=auto and the right /var/log/journal/machine-id/ exists
then the bind mount the subdirectory into the container might fail due
to the ~/mycontainer/var/log/journal/machine-id/ of the container not
being empty.

There is no reason to check if the container journal subdir is empty
since there will be a bind mount on top of it. The user asked for a bind
mount so give it.

Note: a next call with --link-journal=guest may fail due to the
/var/log/journal/machine-id/ on the host not being empty.

https://bugs.freedesktop.org/show_bug.cgi?id=76193

Reported-by: Tobias Hunger <tobias.hunger@gmail.com>
src/nspawn/nspawn.c

index 9d9238fdb51b191d45ce6b3b3c6ff7874d013834..ef84664dfeefff4dbdf61387c3c9e3d7e7e179ac 100644 (file)
@@ -1143,11 +1143,6 @@ static int setup_journal(const char *directory) {
         } else if (access(p, F_OK) < 0)
                 return 0;
 
-        if (dir_is_empty(q) == 0) {
-                log_error("%s not empty.", q);
-                return -ENOTEMPTY;
-        }
-
         r = mkdir_p(q, 0755);
         if (r < 0) {
                 log_error("Failed to create %s: %m", q);