summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2020-01-21 10:40:18 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-02-05 17:35:26 +0100
commit486f8ca365aa4e6f1688b3ffe4d06ba034b239ca (patch)
tree52b50487c705c8b7609f3d4bb9e670d20eccf58b
parent56d442e29d5a5db10e22a025f5831b3ae1c13894 (diff)
downloadsystemd-486f8ca365aa4e6f1688b3ffe4d06ba034b239ca.tar.gz
generator: order growfs for the root fs after systemd-remount-fs
Fixes: #14603 (cherry picked from commit 18e6e8635f06ac8d935ed5494ea65c6dac6af90f) (cherry picked from commit d7ede1ade56426db83523523e473ed52133c39af)
-rw-r--r--src/shared/generator.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/shared/generator.c b/src/shared/generator.c
index 06e1ab8031..1cf5887a60 100644
--- a/src/shared/generator.c
+++ b/src/shared/generator.c
@@ -493,15 +493,21 @@ int generator_hook_up_growfs(
"BindsTo=%%i.mount\n"
"Conflicts=shutdown.target\n"
"After=%%i.mount\n"
- "Before=shutdown.target %s\n"
+ "Before=shutdown.target %s\n",
+ program_invocation_short_name,
+ target);
+
+ if (empty_or_root(where)) /* Make sure the root fs is actually writable before we resize it */
+ fprintf(f,
+ "After=systemd-remount-fs.service\n");
+
+ fprintf(f,
"\n"
"[Service]\n"
"Type=oneshot\n"
"RemainAfterExit=yes\n"
"ExecStart="SYSTEMD_GROWFS_PATH " %s\n"
"TimeoutSec=0\n",
- program_invocation_short_name,
- target,
escaped);
return generator_add_symlink(dir, where_unit, "wants", unit);