diff --git a/man/crypttab.xml b/man/crypttab.xml
index ab77dea837..1f77939589 100644
--- a/man/crypttab.xml
+++ b/man/crypttab.xml
@@ -353,7 +353,7 @@
particular, if the device is used for a mount point, the mount point itself also needs to
have the option, or the boot will fail if the device is not unlocked
successfully. If a keyfile and/or a are specified, the dependencies on
- their respective directories will also not be fatal, so that umounting said directories will
+ their respective directories will also not be fatal, so that unmounting said directories will
not cause the generated cryptset unit to be deactivated.
diff --git a/man/systemd-system.conf.xml b/man/systemd-system.conf.xml
index 164cfee1ed..cf5a3612f6 100644
--- a/man/systemd-system.conf.xml
+++ b/man/systemd-system.conf.xml
@@ -640,35 +640,15 @@
Environment
-
- ManagerEnvironment=
-
- Takes the same arguments as DefaultEnvironment=, see above. Sets
- environment variables for the manager process itself. These variables are inherited by processes
- spawned by user managers, but not the system manager - use DefaultEnvironment=
- for that. Note that these variables are merged into the existing environment block. In particular, in
- case of the system manager, this includes variables set by the kernel based on the kernel command line.
- As with DefaultEnvironment=, this environment block is internal, and changes are not
- reflected in the manager's /proc/PID/environ.
-
- Setting environment variables for the manager process may be useful to modify its behaviour.
- See Known Environment Variables for a
- descriptions of some variables understood by systemd.
-
- Simple %-specifier expansion is supported, see below for a list of supported
- specifiers.
-
-
-
-
-
DefaultEnvironment=Configures environment variables passed to all executed processes. Takes a
space-separated list of variable assignments. See environ7 for
- details about environment variables.
+ details about environment variables. This environment block is internal, and changes are not
+ reflected in the manager's /proc/PID/environ.
+
Simple %-specifier expansion is supported, see below for a list of supported
specifiers.
@@ -684,6 +664,30 @@
+
+
+ ManagerEnvironment=
+
+ Sets environment variables for the manager process itself. Takes a space-separated
+ list of variable assignment in the same format as DefaultEnvironment=, see above.
+ These variables are merged into the existing environment block of the manager process. In particular,
+ in case of the system manager, this block includes variables set by the kernel based on the kernel
+ command line, and in case of the user manager, the variables passed by the system manager. After
+ those variables have been merged, they will persist until overriden, even if the manager is reloaded
+ or reexecuted. In case of the user manager, these variables are also inherited by processes spawned
+ by the manager. As with DefaultEnvironment=, this environment block is internal,
+ and changes are not reflected in the manager's /proc/PID/environ.
+
+ Setting environment variables for the manager process may be useful to modify its behaviour.
+ See Known Environment Variables for a description
+ of some variables understood by systemd.
+
+ Simple %-specifier expansion is supported, see below for a list of supported
+ specifiers.
+
+
+
+
diff --git a/src/core/main.c b/src/core/main.c
index 0f363d5c8f..822d2eedcd 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -2810,26 +2810,24 @@ static int parse_configuration(const struct rlimit *saved_rlimit_nofile,
log_warning_errno(r, "Failed to parse kernel command line, ignoring: %m");
}
- /* Initialize some default rlimits for services if they haven't been configured */
- fallback_rlimit_nofile(saved_rlimit_nofile);
- fallback_rlimit_memlock(saved_rlimit_memlock);
-
- /* Note that this also parses bits from the kernel command line, including "debug". */
- log_parse_environment();
-
- /* Initialize the show status setting if it hasn't been set explicitly yet */
+ /* Initialize the show status setting if it hasn't been explicitly set yet */
if (arg_show_status == _SHOW_STATUS_INVALID)
arg_show_status = SHOW_STATUS_YES;
- /* Slightly raise the OOM score for our services if we are running for unprivileged users. */
- determine_default_oom_score_adjust();
-
/* Push variables into the manager environment block */
setenv_manager_environment();
- /* Parse log environment variables again to take into account any new environment variables. */
+ /* Parse log environment variables to take into account any new environment variables.
+ * Note that this also parses bits from the kernel command line, including "debug". */
log_parse_environment();
+ /* Initialize some default rlimits for services if they haven't been configured */
+ fallback_rlimit_nofile(saved_rlimit_nofile);
+ fallback_rlimit_memlock(saved_rlimit_memlock);
+
+ /* Slightly raise the OOM score for our services if we are running for unprivileged users. */
+ determine_default_oom_score_adjust();
+
return 0;
}