From: Lennart Poettering Date: Thu, 21 Jun 2012 23:35:52 +0000 (+0200) Subject: man: document all kernel command line options we understand X-Git-Tag: v186~123 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=c66e7bc7a19c068ca1c414f2f8bd5dc13c20907f man: document all kernel command line options we understand --- diff --git a/Makefile.am b/Makefile.am index 03e28e8c3..69a842b77 100644 --- a/Makefile.am +++ b/Makefile.am @@ -460,6 +460,7 @@ MANPAGES = \ man/systemd.exec.5 \ man/systemd.special.7 \ man/systemd.journal-fields.7 \ + man/kernel-command-line.7 \ man/daemon.7 \ man/runlevel.8 \ man/telinit.8 \ diff --git a/TODO b/TODO index 908dadb97..4aa03a525 100644 --- a/TODO +++ b/TODO @@ -25,6 +25,9 @@ Bugfixes: Features: +* turn $NOTIFY_SOCKET back into an abstract namespace socket for + compatibility with services which chroot() + * exclude processes marked with argv[0][0]=@ from the normal service killing too * support rd.luks= kernel cmdline params in cryptsetup generator @@ -33,8 +36,6 @@ Features: * support rd.driver= kernel cmdline params in modules load -* supprto rd.xxx wherever else makes sense - * systemctl: when stopping a service which has triggres and warning about it actually check the TriggeredBy= deps fields * journal: hook up with EFI firmware log, new kmsg logic @@ -141,8 +142,6 @@ Features: * when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting -* add man page documenting all kernel cmdline options, including stuff like fsck.mode= - * support container_ttys= * journald: make configurable "store-on-var", "store-on-run", "dont-store", "auto" diff --git a/man/journald.conf.xml b/man/journald.conf.xml index 13470b2a4..deb2344fc 100644 --- a/man/journald.conf.xml +++ b/man/journald.conf.xml @@ -212,10 +212,10 @@ to syslog is enabled. These settings may be overridden at boot time with the kernel command line options - systemd_journald.forward_to_syslog=, - systemd_journald.forward_to_kmsg= + systemd.journald.forward_to_syslog=, + systemd.journald.forward_to_kmsg= and - systemd_journald.forward_to_console=. If + systemd.journald.forward_to_console=. If forwarding to the kernel log buffer and ImportKernel= is enabled at the same time care is taken diff --git a/man/kernel-command-line.xml b/man/kernel-command-line.xml new file mode 100644 index 000000000..0745e0f11 --- /dev/null +++ b/man/kernel-command-line.xml @@ -0,0 +1,237 @@ + + + + + + + + + kernel-command-line + systemd + + + + Developer + Lennart + Poettering + lennart@poettering.net + + + + + + kernel-command-line + 7 + + + + kernel-command-line + Kernel Command Line Paramaters + + + + /proc/cmdline + + + + Description + + The kernel, the initial RAM disk (initrd) and + basic userspace functionality may be configured at boot via + kernel command line arguments. + + For command line parameters understood by the + kernel please see kernel-parameters.txt. + + For command line paramaters understood by the + initial RAM disk, please see + dracut.cmdline7. + + + + + Core OS Command Line Arguments + + + + systemd.unit= + rd.systemd.unit= + systemd.dump_core= + systemd.crash_shell= + systemd.crash_chvt= + systemd.confirm_spawn= + systemd.show_status= + systemd.sysv_console= + systemd.log_target= + systemd.log_level= + systemd.log_color= + systemd.log_location= + systemd.default_standard_output= + systemd.default_standard_error= + systemd.setenv= + + Parameters understood by + the system and service manager + to control system behaviour. For details see + systemd1. + + + + + quiet + + Parameters understood by + both the kernel and the system + and service manager to control + console log verbosity. For + details see + systemd1. + + + + + emergency + single + s + S + 1 + 2 + 3 + 4 + 5 + + Parameters understood by + the system and service + manager, as compatibility + options. For details see + systemd1. + + + + + locale.LANG= + locale.LANGUAGE= + locale.LC_CTYPE= + locale.LC_NUMERIC= + locale.LC_TIME= + locale.LC_COLLATE= + locale.LC_MONETARY= + locale.LC_MESSAGES= + locale.LC_PAPER= + locale.LC_NAME= + locale.LC_ADDRESS= + locale.LC_TELEPHONE= + locale.LC_MEASUREMENT= + locale.LC_IDENTIFICATION= + + Parameters understood by + the system and service manager + to control locale and language + settings. For details see + systemd1. + + + + + fsck.mode= + + + Parameters understood by + the file system checker + services. For details see + fsck-root.service8. + + + + + quotacheck.mode= + + + Parameters understood by + the file quota checker + service. For details see + quotacheck.service8. + + + + + systemd.journald.forward_to_syslog= + systemd.journald.forward_to_kmsg= + systemd.journald.forward_to_console= + + + Parameters understood by + the journal service. For + details see + systemd-journald.service8. + + + + + vconsole.keymap= + vconsole.keymap.toggle= + vconsole.font= + vconsole.font.map= + vconsole.font.unimap= + + + Parameters understood by + the virtual console setup logic. For + details see + systemd-vconsole-setup.service8. + + + + + udev.log-priority= + udev.children-max= + udev.udev.exec-delay= + rd.udev.log-priority= + rd.udev.children-max= + rd.udev.udev.exec-delay= + + + Parameters understood by + the device event managing daemon. For + details see + systemd-udevd8. + + + + + + + + + See Also + + systemd1, + dracut.cmdline7, + fsck-root.service8, + quotacheck.service8, + systemd-journald.service8, + systemd-vconsole-setup.service8, + systemd-udevd8 + + + + diff --git a/man/systemd-journald.service.xml b/man/systemd-journald.service.xml index 8ee0cf4e5..5c4f03159 100644 --- a/man/systemd-journald.service.xml +++ b/man/systemd-journald.service.xml @@ -128,6 +128,34 @@ + + Kernel Command Line + + A few configuration parameters from + journald.conf may be overriden on + the kernel command line: + + + + systemd.journald.forward_to_syslog= + systemd.journald.forward_to_kmsg= + systemd.journald.forward_to_console= + + Enables/disables + forwarding of collected log messages + to syslog, the kernel log buffer or + the system console. + + + See + journald.conf5 + for information about these settings. + + + + + + diff --git a/man/systemd.xml b/man/systemd.xml index d179273ca..bf450d51c 100644 --- a/man/systemd.xml +++ b/man/systemd.xml @@ -971,6 +971,7 @@ systemd.unit= + rd.systemd.unit= Overrides the unit to activate on boot. Defaults to @@ -980,8 +981,12 @@ rescue.target or emergency.service. See systemd.special7 - for details about these - units. + for details about these units. The + option prefixed with + rd. is honoured + only in the initial RAM disk (initrd), + while the one that isn't prefixed only + in the main system. @@ -1036,7 +1041,11 @@ argument. If shows terse service status updates on the console during bootup. Defaults to - . + , unless + is passed as + kernel command line option in which + case it defaults to + . @@ -1093,7 +1102,98 @@ disk. + + quiet + + If passed turns off + status output at boot, and disconnects + SysV scripts from the console, much + like + systemd.show_status=false + and + systemd.sysv_console=false + would. Note that this option is also + read by the kernel itself and disables + kernel log output to the + kernel. Passing this option hence + turns off the usual output from both + the system manager and the + kernel. + + + + emergency + + Boot into emergency + mode. This is equivalent to + systemd.unit=emergency.target + and provided for compatibility + reasons and to be easier to type. + + + + single + s + S + 1 + + Boot into rescue + mode. This is equivalent to + systemd.unit=rescue.target + and provided for compatibility reasons + and to be easier to + type. + + + + 2 + 3 + 4 + 5 + + Boot into the + specified legacy SysV runlevel. This + is equivalent to + systemd.unit=runlevel2.target, + systemd.unit=runlevel3.target, + systemd.unit=runlevel4.target, + resp. systemd.unit=runlevel5.target + and provided for compatibility reasons + and to be easier to + type. + + + + locale.LANG= + locale.LANGUAGE= + locale.LC_CTYPE= + locale.LC_NUMERIC= + locale.LC_TIME= + locale.LC_COLLATE= + locale.LC_MONETARY= + locale.LC_MESSAGES= + locale.LC_PAPER= + locale.LC_NAME= + locale.LC_ADDRESS= + locale.LC_TELEPHONE= + locale.LC_MEASUREMENT= + locale.LC_IDENTIFICATION= + + Set the system locale + to use. This overrides the settings in + /etc/locale.conf. For + more information see + locale.conf5 + and + locale7. + + + + For other kernel command line parameters + understood by components of the core OS, please refer + to + kernel-command-line7. @@ -1160,7 +1260,8 @@ sd-daemon7, systemd.unit5, systemd.special5, - pkg-config1 + pkg-config1, + kernel-command-line7 diff --git a/src/core/main.c b/src/core/main.c index 5cd012e95..e6a90e013 100644 --- a/src/core/main.c +++ b/src/core/main.c @@ -397,14 +397,15 @@ static int parse_proc_cmdline_word(const char *word) { "systemd.default_standard_output=null|tty|syslog|syslog+console|kmsg|kmsg+console|journal|journal+console\n" " Set default log output for services\n" "systemd.default_standard_error=null|tty|syslog|syslog+console|kmsg|kmsg+console|journal|journal+console\n" - " Set default log error output for services\n"); + " Set default log error output for services\n" + "systemd.setenv=ASSIGNMENT Set an environment variable for all spawned processes\n"); } else if (streq(word, "quiet")) { arg_show_status = false; #ifdef HAVE_SYSV_COMPAT arg_sysv_console = false; #endif - } else { + } else if (!in_initrd()) { unsigned i; /* SysV compatibility */ diff --git a/src/journal/journald.c b/src/journal/journald.c index 5c6c4cae9..98a155bde 100644 --- a/src/journal/journald.c +++ b/src/journal/journald.c @@ -2630,19 +2630,19 @@ static int server_parse_proc_cmdline(Server *s) { goto finish; } - if (startswith(word, "systemd_journald.forward_to_syslog=")) { + if (startswith(word, "systemd.journald.forward_to_syslog=")) { r = parse_boolean(word + 35); if (r < 0) log_warning("Failed to parse forward to syslog switch %s. Ignoring.", word + 35); else s->forward_to_syslog = r; - } else if (startswith(word, "systemd_journald.forward_to_kmsg=")) { + } else if (startswith(word, "systemd.journald.forward_to_kmsg=")) { r = parse_boolean(word + 33); if (r < 0) log_warning("Failed to parse forward to kmsg switch %s. Ignoring.", word + 33); else s->forward_to_kmsg = r; - } else if (startswith(word, "systemd_journald.forward_to_console=")) { + } else if (startswith(word, "systemd.journald.forward_to_console=")) { r = parse_boolean(word + 36); if (r < 0) log_warning("Failed to parse forward to console switch %s. Ignoring.", word + 36);