diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2020-10-23 15:47:33 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2020-10-23 15:49:03 +0200 |
commit | 0dc9fd56a53ef833fdc5b9b81bc958e7c3dd41a4 (patch) | |
tree | 1f41c34d362d2a60cc047e76af7a0f643efa41ae | |
parent | Revert "basic/env-util: (mostly) follow POSIX for what variable names are all... (diff) | |
download | systemd-0dc9fd56a53ef833fdc5b9b81bc958e7c3dd41a4.tar.xz systemd-0dc9fd56a53ef833fdc5b9b81bc958e7c3dd41a4.zip |
man: document what variables are allowed
Diffstat (limited to '')
-rw-r--r-- | man/systemctl.xml | 25 | ||||
-rw-r--r-- | man/systemd.exec.xml | 19 |
2 files changed, 28 insertions, 16 deletions
diff --git a/man/systemctl.xml b/man/systemctl.xml index 61f8d9c9fe..e67469ee46 100644 --- a/man/systemctl.xml +++ b/man/systemctl.xml @@ -1060,6 +1060,14 @@ Jan 12 10:46:45 example.com bluetoothd[8900]: gatt-time-server: Input/output err <refsect2> <title>Environment Commands</title> + <para><command>systemd</command> supports an environment block that is passed to processes the manager + spawns. The names of the variables can contain ASCII letters, digits, and the underscore + character. Variable names cannot be empty or start with a digit. In variable values, most characters + are allowed, but non-printable characters are currently rejected. The total length of the environment + block is limited to <constant>_SC_ARG_MAX</constant> value defined by + <citerefentry project='man-pages'><refentrytitle>sysconf</refentrytitle><manvolnum>3</manvolnum></citerefentry>. + </para> + <variablelist> <varlistentry> <term><command>show-environment</command></term> @@ -1091,8 +1099,9 @@ Jan 12 10:46:45 example.com bluetoothd[8900]: gatt-time-server: Input/output err <term><command>set-environment <replaceable>VARIABLE=VALUE</replaceable>…</command></term> <listitem> - <para>Set one or more systemd manager environment variables, - as specified on the command line.</para> + <para>Set one or more systemd manager environment variables, as specified on the command + line. This command will fail if variable names and values do not conform to the rules listed + above.</para> </listitem> </varlistentry> <varlistentry> @@ -1113,13 +1122,11 @@ Jan 12 10:46:45 example.com bluetoothd[8900]: gatt-time-server: Input/output err </term> <listitem> - <para>Import all, one or more environment variables set on - the client into the systemd manager environment block. If - no arguments are passed, the entire environment block is - imported. Otherwise, a list of one or more environment - variable names should be passed, whose client-side values - are then imported into the manager's environment - block.</para> + <para>Import all, one or more environment variables set on the client into the systemd manager + environment block. If no arguments are passed, the entire environment block is imported. + Otherwise, a list of one or more environment variable names should be passed, whose client-side + values are then imported into the manager's environment block. This command will silently ignore + any assignments which do not conform to the rules listed above.</para> </listitem> </varlistentry> </variablelist> diff --git a/man/systemd.exec.xml b/man/systemd.exec.xml index 9da919c379..454dd66199 100644 --- a/man/systemd.exec.xml +++ b/man/systemd.exec.xml @@ -2186,13 +2186,18 @@ SystemCallErrorNumber=EPERM</programlisting> <varlistentry> <term><varname>Environment=</varname></term> - <listitem><para>Sets environment variables for executed processes. Takes a space-separated list of variable - assignments. This option may be specified more than once, in which case all listed variables will be set. If - the same variable is set twice, the later setting will override the earlier setting. If the empty string is - assigned to this option, the list of environment variables is reset, all prior assignments have no - effect. Variable expansion is not performed inside the strings, however, specifier expansion is possible. The $ - character has no special meaning. If you need to assign a value containing spaces or the equals sign to a - variable, use double quotes (") for the assignment.</para> + <listitem><para>Sets environment variables for executed processes. Takes a space-separated list of + variable assignments. This option may be specified more than once, in which case all listed variables + will be set. If the same variable is set twice, the later setting will override the earlier + setting. If the empty string is assigned to this option, the list of environment variables is reset, + all prior assignments have no effect. Variable expansion is not performed inside the strings, + however, specifier expansion is possible. The <literal>$</literal> character has no special + meaning. If you need to assign a value containing spaces or the equals sign to a variable, use double + quotes (") for the assignment.</para> + + <para>The names of the variables can contain ASCII letters, digits, and the underscore + character. Variable names cannot be empty or start with a digit. In variable values, most characters + are allowed, but non-printable characters are currently rejected.</para> <para>Example: <programlisting>Environment="VAR1=word1 word2" VAR2=word3 "VAR3=$word 5 6"</programlisting> |