X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.xml;h=85c06d386654a8f595a2ad9b311e6aabcc2dcade;hp=428e17f63becc3375bc5bb0d1dc9f192f0dae85a;hb=775657712d0f6d14b70a0fe947a95a9ecc212440;hpb=74ac3cbd509de2f5995542aa5db39328e8cbd22a diff --git a/man/systemd.xml b/man/systemd.xml index 428e17f63..85c06d386 100644 --- a/man/systemd.xml +++ b/man/systemd.xml @@ -8,16 +8,16 @@ Copyright 2010 Lennart Poettering systemd is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. systemd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. + Lesser General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Lesser General Public License along with systemd; If not, see . --> @@ -45,7 +45,7 @@ systemd init - systemd System and Session Manager + systemd system and service manager @@ -60,7 +60,7 @@ Description - systemd is a system and session manager for + systemd is a system and service manager for Linux operating systems. When run as first process on boot (as PID 1), it acts as init system that brings up and maintains userspace services. @@ -77,8 +77,8 @@ When run as system instance, systemd interprets the configuration file system.conf, otherwise - session.conf. See - systemd.conf5 + user.conf. See + systemd-system.conf5 for more information. @@ -95,6 +95,12 @@ Prints a short help text and exits. + + + + Prints a systemd version + identifier and exits. + @@ -130,59 +136,64 @@ Set default unit to - activate on startup. If not specified + activate on startup. If not specified, defaults to default.target. - - - Tell systemd to run a - system instance (resp. session - instance), even if the process ID is - not 1 (resp. is 1), i.e. systemd is not - (resp. is) run as init process. + + + For , + tell systemd to run a + system instance, even if the process ID is + not 1, i.e. systemd is not run as init process. + does the opposite, + running a user instance even if the process + ID is 1. Normally it should not be necessary to pass these options, as systemd automatically detects the mode it is started in. These options are hence of - little use except for - debugging. + little use except for debugging. Note + that it is not supported booting and + maintaining a full system with systemd + running in + mode, but PID not 1. In practice, + passing explicitly is + only useful in conjunction with + . - Dump core on crash. This switch has no effect when run as session instance. + Dump core on + crash. This switch has no effect when + run as user + instance. - Run shell on crash. This switch has no effect when run as session instance. + Run shell on + crash. This switch has no effect when + run as user + instance. - Ask for confirmation when spawning processes. This switch has no effect when run as session instance. + Ask for confirmation + when spawning processes. This switch + has no effect when run as user + instance. Show terse service status information while booting. This - switch has no effect when run as - session instance. Takes a boolean - argument which may be omitted - which is interpreted as - . - - - - - Controls whether - output of SysV init scripts will be - directed to the console. This switch - has no effect when run as session + switch has no effect when run as user instance. Takes a boolean argument which may be omitted which is interpreted as @@ -194,8 +205,10 @@ Set log target. Argument must be one of , + , , , + , , . @@ -220,7 +233,7 @@ Highlight important log messages. Argument is a boolean - value. If the argument is omitted it + value. If the argument is omitted, it defaults to . @@ -235,6 +248,36 @@ it defaults to . + + + + + Sets the default + output or error output for all + services and sockets, respectively. That is, controls + the default for + + and + (see + systemd.exec5 + for details). Takes one of + , + , + , + , + , + , + , + , + . If the + argument is omitted + + defaults to + and + + to + . + @@ -242,25 +285,27 @@ Concepts systemd provides a dependency system between - various entities called "units". Units encapsulate - various objects that are relevant for system boot-up - and maintenance. The majority of units are configured - in unit configuration files, whose syntax and basic - set of options is described in + various entities called "units" of 12 different + types. Units encapsulate various objects that are + relevant for system boot-up and maintenance. The + majority of units are configured in unit configuration + files, whose syntax and basic set of options is + described in systemd.unit5, however some are created automatically from other - configuration or dynamically from system state. Units - may be 'active' (meaning started, bound, plugged in, - ... depending on the unit type, see below), or - 'inactive' (meaning stopped, unbound, unplugged, ...), - as well as in the process of being activated or - deactivated, i.e. between the two states (these states - are called 'activating', 'deactivating'). A special - 'failed' state is available as well which is very - similar to 'inactive' and is entered when the service - failed in some way (process returned error code on - exit, or crashed, or an operation timed out). If this - state is entered the cause will be logged, for later + configuration, dynamically from system state or + programmatically at runtime. Units may be "active" + (meaning started, bound, plugged in, ..., depending on + the unit type, see below), or "inactive" (meaning + stopped, unbound, unplugged, ...), as well as in the + process of being activated or deactivated, + i.e. between the two states (these states are called + "activating", "deactivating"). A special "failed" + state is available as well, which is very similar to + "inactive" and is entered when the service failed in + some way (process returned error code on exit, or + crashed, or an operation timed out). If this state is + entered, the cause will be logged, for later reference. Note that the various unit types may have a number of additional substates, which are mapped to the five generalized unit states described @@ -269,7 +314,7 @@ The following unit types are available: - Service units, which control + Service units, which start and control daemons and the processes they consist of. For details see systemd.service5. @@ -317,20 +362,32 @@ systemd.timer5. Swap units are very similar to - mount units and encapsulated memory swap + mount units and encapsulate memory swap partitions or files of the operating - systemd. They are described in systemd.swap5. + system. They are described in systemd.swap5. Path units may be used to activate other services when file system objects change or are modified. See systemd.path5. + Slice units may be used to + group units which manage system processes + (such as service and scope units) in a + hierarchical tree for resource management + purposes. See + systemd.slice5. + + Scope units are similar to + service units, but manage foreign processes + instead of starting them as well. See + systemd.scope5. + Units are named as their configuration files. Some units have special semantics. A detailed - list you may find in + list is available in systemd.special7. systemd knows various kinds of dependencies, @@ -355,7 +412,7 @@ this. Application programs and units (via - dependencies) may requests state changes of units. In + dependencies) may request state changes of units. In systemd, these requests are encapsulated as 'jobs' and maintained in a job queue. Jobs may succeed or can fail, their execution is ordered based on the ordering @@ -372,7 +429,7 @@ multi-user.target (for limited console-only boots for use in embedded or server environments, or similar; a subset of - graphical.target). However it is at the discretion of + graphical.target). However, it is at the discretion of the administrator to configure it as an alias to any other target unit. See systemd.special7 @@ -382,7 +439,7 @@ individual Linux control groups named after the unit which they belong to in the private systemd hierarchy. (see cgroups.txt + url="https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt">cgroups.txt for more information about control groups, or short "cgroups"). systemd uses this to effectively keep track of processes. Control group information is @@ -430,7 +487,7 @@ Systemd contains native implementations of various tasks that need to be executed as part of the - boot process. For example, it sets the host name or + boot process. For example, it sets the hostname or configures the loopback network device. It also sets up and mounts various API file systems, such as /sys or @@ -440,6 +497,26 @@ ideas behind systemd please refer to the Original Design Document. + + Note that some but not all interfaces provided + by systemd are covered by the Interface + Stability Promise. + + Units may be generated dynamically at boot and + system manager reload time, for example based on other + configuration files or parameters passed on the kernel + command line. For details see the Generators + Specification. + + Systems which invoke systemd in a container + or initrd environment should implement the + Container + Interface or initrd + Interface specifications, respectively. @@ -457,9 +534,9 @@ pkg-config systemd --variable=systemdsystemunitdir. Other directories checked are - /usr/local/share/systemd/system + /usr/local/lib/systemd/system and - /usr/share/systemd/system. User + /usr/lib/systemd/system. User configuration always takes precedence. pkg-config systemd @@ -472,16 +549,18 @@ disable commands of the systemctl1 - tool. + tool. Full list of directories is provided in + systemd.unit5. + - Session unit directories + User unit directories Similar rules apply - for the session unit + for the user unit directories. However, here the XDG Base Directory specification @@ -489,11 +568,11 @@ units. Applications should place their unit files in the directory returned by pkg-config systemd - --variable=systemdsessionunitdir. Global + --variable=systemduserunitdir. Global configuration is done in the directory reported by pkg-config systemd - --variable=systemdsessionconfdir. The + --variable=systemduserconfdir. The enable and disable commands of the @@ -501,7 +580,9 @@ tool can handle both global (i.e. for all users) and private (for one user) enabling/disabling of - units. + units. Full list of directories is provided in + systemd.unit5. + @@ -544,7 +625,7 @@ - SIGTERM + SIGTERM Upon receiving this signal the systemd system manager @@ -554,17 +635,17 @@ to systemctl daemon-reexec. - systemd session managers will + systemd user managers will start the exit.target unit when this signal is received. This is mostly equivalent to - systemctl --session start + systemctl --user start exit.target. - SIGINT + SIGINT Upon receiving this signal the systemd system manager will @@ -574,13 +655,13 @@ systemctl start ctl-alt-del.target. - systemd session managers + systemd user managers treat this signal the same way as - SIGTERM. + SIGTERM. - SIGWINCH + SIGWINCH When this signal is received the systemd system manager @@ -591,12 +672,12 @@ kbrequest.target. This signal is ignored by - systemd session + systemd user managers. - SIGPWR + SIGPWR When this signal is received the systemd manager @@ -608,7 +689,7 @@ - SIGUSR1 + SIGUSR1 When this signal is received the systemd manager will try @@ -617,7 +698,7 @@ - SIGUSR2 + SIGUSR2 When this signal is received the systemd manager will log @@ -628,7 +709,7 @@ - SIGHUP + SIGHUP Reloads the complete daemon configuration. This is mostly @@ -637,7 +718,7 @@ - SIGRTMIN+0 + SIGRTMIN+0 Enters default mode, starts the default.target @@ -647,7 +728,7 @@ - SIGRTMIN+1 + SIGRTMIN+1 Enters rescue mode, starts the @@ -658,7 +739,7 @@ - SIGRTMIN+2 + SIGRTMIN+2 Enters emergency mode, starts the @@ -669,7 +750,7 @@ - SIGRTMIN+3 + SIGRTMIN+3 Halts the machine, starts the @@ -680,7 +761,7 @@ - SIGRTMIN+4 + SIGRTMIN+4 Powers off the machine, starts the @@ -691,7 +772,7 @@ - SIGRTMIN+5 + SIGRTMIN+5 Reboots the machine, starts the @@ -700,13 +781,121 @@ systemctl start reboot.target. + + + SIGRTMIN+6 + + Reboots the machine via kexec, + starts the + kexec.target + unit. This is mostly equivalent to + systemctl start + kexec.target. + + + + SIGRTMIN+13 + + Immediately halts the machine. + + + + SIGRTMIN+14 + + Immediately powers off the machine. + + + + SIGRTMIN+15 + + Immediately reboots the machine. + + + + SIGRTMIN+16 + + Immediately reboots the machine with kexec. + + + + SIGRTMIN+20 + + Enables display of + status messages on the console, as + controlled via + systemd.show_status=1 + on the kernel command + line. + + + + SIGRTMIN+21 + + Disables display of + status messages on the console, as + controlled via + systemd.show_status=0 + on the kernel command + line. + + + + SIGRTMIN+22 + SIGRTMIN+23 + + Sets the log level to + debug + (or info on + SIGRTMIN+23), as + controlled via + systemd.log_level=debug + (or systemd.log_level=info + on SIGRTMIN+23) on + the kernel command + line. + + + + SIGRTMIN+24 + + Immediately exits the + manager (only available for --user + instances). + + + + SIGRTMIN+26 + SIGRTMIN+27 + SIGRTMIN+28 + SIGRTMIN+29 + + Sets the log level to + journal-or-kmsg + (or console on + SIGRTMIN+27, + kmsg on + SIGRTMIN+28, + or syslog-or-kmsg + on SIGRTMIN+29), as + controlled via + systemd.log_target=journal-or-kmsg + (or systemd.log_target=console + on SIGRTMIN+27, + systemd.log_target=kmsg + on SIGRTMIN+28, + or + systemd.log_target=syslog-or-kmsg + on SIGRTMIN+29) on + the kernel command + line. + Environment - + $SYSTEMD_LOG_LEVEL systemd reads the @@ -746,7 +935,7 @@ $XDG_DATA_HOME $XDG_DATA_DIRS - The systemd session + The systemd user manager uses these variables in accordance to the XDG @@ -805,11 +994,21 @@ Kernel Command Line - When run as system instance systemd parses a few kernel command line arguments: - - + When run as system instance systemd parses a + number of kernel command line + argumentsIf run inside a Linux + container these arguments may be passed as command + line arguments to systemd itself, next to any of the + command line options listed in the Options section + above. If run outside of Linux containers, these + arguments are parsed from + /proc/cmdline + instead.: + + systemd.unit= + rd.systemd.unit= Overrides the unit to activate on boot. Defaults to @@ -819,17 +1018,21 @@ rescue.target or emergency.service. See systemd.special7 - for details about these - units. + for details about these units. The + option prefixed with + rd. is honored + only in the initial RAM disk (initrd), + while the one that is not prefixed only + in the main system. systemd.dump_core= Takes a boolean - argument. If + argument. If , systemd dumps core when it - crashes. Otherwise no core dump is + crashes. Otherwise, no core dump is created. Defaults to . @@ -838,10 +1041,10 @@ systemd.crash_shell= Takes a boolean - argument. If + argument. If , systemd spawns a shell when it - crashes. Otherwise no core dump is - created. Defaults to + crashes. Otherwise, no shell is + spawned. Defaults to , for security reasons, as the shell is not protected by any password @@ -855,14 +1058,14 @@ argument. If positive systemd activates the specified virtual terminal when it crashes. Defaults to - -1. + -1. systemd.confirm_spawn= Takes a boolean - argument. If + argument. If , asks for confirmation when spawning processes. Defaults to . @@ -872,19 +1075,9 @@ systemd.show_status= Takes a boolean - argument. If + argument. If , shows terse service status updates on the console during bootup. Defaults to - . - - - - systemd.sysv_console= - - Takes a boolean - argument. If - output of SysV init scripts will be - directed to the console. Defaults to , unless is passed as kernel command line option in which @@ -904,7 +1097,131 @@ environment variables described above. + + systemd.default_standard_output= + systemd.default_standard_error= + Controls default + standard output and error output for + services, with the same effect as the + + and + command line arguments described + above, respectively. + + + + systemd.setenv= + + Takes a string + argument in the form VARIABLE=VALUE. + May be used to set default environment + variables to add to forked child processes. + May be used more than once to set multiple + variables. + + + + quiet + + Turn off + status output at boot, much like + systemd.show_status=false + would. Note that this option is also + read by the kernel itself and disables + kernel log output. Passing this option + hence turns off the usual output from + both the system manager and the kernel. + + + + + debug + + Turn on debugging + output. This is equivalent to + systemd.log_level=debug. + Note that this option is also read by + the kernel itself and enables kernel + debug output. Passing this option + hence turns on the debug output from + both the system manager and the + kernel. + + + + -b + 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. These + are equivalent to + systemd.unit=runlevel2.target, + systemd.unit=runlevel3.target, + systemd.unit=runlevel4.target, + and systemd.unit=runlevel5.target, respectively, + 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. @@ -912,53 +1229,37 @@ - @/org/freedesktop/systemd1/notify + /run/systemd/notify Daemon status - notification socket. This is an AF_UNIX - datagram socket in the Linux abstract - namespace, and is used to implement - the daemon notification logic as - implemented by + notification socket. This is an + AF_UNIX datagram socket and is used to + implement the daemon notification + logic as implemented by sd_notify3. - @/org/freedesktop/systemd1/logger - - Used internally by the - systemd-logger.service - unit to connect STDOUT and/or STDERR - of spawned processes to - syslog3 - or the kernel log buffer. This is an - AF_UNIX stream socket in the Linux - abstract namespace. - - - - @/org/freedesktop/systemd1/shutdown + /run/systemd/shutdownd Used internally by the shutdown8 tool to implement delayed - shutdowns. This is an AF_UNIX datagram - socket in the Linux abstract - namespace. + shutdowns. This is an AF_UNIX datagram + socket. - @/org/freedesktop/systemd1/private + /run/systemd/private Used internally as communication channel between systemctl1 and the systemd process. This is an - AF_UNIX stream socket in the Linux - abstract namespace. This interface is - private to systemd and should not be - used in external + AF_UNIX stream socket. This interface + is private to systemd and should not + be used in external projects. @@ -980,14 +1281,20 @@ See Also + The systemd Homepage, + systemd-system.conf5, + locale.conf5, systemctl1, - systemadm1, + journalctl1, systemd-notify1, daemon7, - sd-daemon7, + sd-daemon3, systemd.unit5, systemd.special5, - pkg-config1 + pkg-config1, + kernel-command-line7, + bootup7, + systemd.directives7