diff --git a/man/systemd-debug-generator.xml b/man/systemd-debug-generator.xml
index d5cf4109b0a..fa88e8ac01f 100644
--- a/man/systemd-debug-generator.xml
+++ b/man/systemd-debug-generator.xml
@@ -33,27 +33,38 @@
that reads the kernel command line and understands three
options:
- If the option is specified
- and followed by a unit name, this unit is masked for the runtime,
- similar to the effect of
+ If the or
+ option is specified and followed by a unit name, this unit is
+ masked for the runtime, similar to the effect of
systemctl1's
mask command. This is useful to boot with
certain units removed from the initial boot transaction for
- debugging system startup. May be specified more than once.
+ debugging system startup. May be specified more than once.
+ is honored only by initial
+ RAM disk (initrd) while is
+ honored only in the main system.
- If the option is specified
+ If the or
+ option is specified
and followed by a unit name, a start job for this unit is added to
the initial transaction. This is useful to start one or more
- additional units at boot. May be specified more than once.
+ additional units at boot. May be specified more than once.
+ is honored only by initial
+ RAM disk (initrd) while is
+ honored only in the main system.
- If the option is
+ If the or
+ option is
specified, the debug shell service
debug-shell.service is pulled into the boot
transaction. It will spawn a debug shell on tty9 during early
system startup. Note that the shell may also be turned on
persistently by enabling it with
systemctl1's
- enable command.
+ enable command.
+ is honored only by initial
+ RAM disk (initrd) while is
+ honored only in the main system.systemd-debug-generator implements
systemd.generator7.
diff --git a/src/debug-generator/debug-generator.c b/src/debug-generator/debug-generator.c
index dd6ab94fa2d..800d31cebe1 100644
--- a/src/debug-generator/debug-generator.c
+++ b/src/debug-generator/debug-generator.c
@@ -154,7 +154,7 @@ int main(int argc, char *argv[]) {
umask(0022);
- r = proc_cmdline_parse(parse_proc_cmdline_item, NULL, 0);
+ r = proc_cmdline_parse(parse_proc_cmdline_item, NULL, PROC_CMDLINE_RD_STRICT | PROC_CMDLINE_STRIP_RD_PREFIX);
if (r < 0)
log_warning_errno(r, "Failed to parse kernel command line, ignoring: %m");