summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-12-12 16:58:57 +0100
committerLennart Poettering <lennart@poettering.net>2014-12-12 17:30:25 +0100
commitdf9a75e480ecbfe230589a7c1e8e0bb790ee0595 (patch)
tree3090b7c34897dd949a46e0151c72f85e5c0ff7b2
parent53e438e3016e6b8304834d784fd0bbfeeb17cb77 (diff)
nspawn: don't link journals in ephemeral mode
-rw-r--r--src/nspawn/nspawn.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
index 8082166ee2..f6f20abdaf 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
@@ -687,6 +687,11 @@ static int parse_argv(int argc, char *argv[]) {
return -EINVAL;
}
+ if (arg_ephemeral && !IN_SET(arg_link_journal, LINK_NO, LINK_AUTO)) {
+ log_error("--ephemeral and --link-journal= may not be combined.");
+ return -EINVAL;
+ }
+
if (arg_volatile != VOLATILE_NO && arg_read_only) {
log_error("Cannot combine --read-only with --volatile. Note that --volatile already implies a read-only base hierarchy.");
return -EINVAL;
@@ -1317,6 +1322,10 @@ static int setup_journal(const char *directory) {
char *id;
int r;
+ /* Don't link journals in ephemeral mode */
+ if (arg_ephemeral)
+ return 0;
+
p = strappend(directory, "/etc/machine-id");
if (!p)
return log_oom();
@@ -1345,8 +1354,7 @@ static int setup_journal(const char *directory) {
"Host and machine ids are equal (%s): refusing to link journals", id);
if (arg_link_journal == LINK_AUTO)
return 0;
- return
- -EEXIST;
+ return -EEXIST;
}
if (arg_link_journal == LINK_NO)