X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsystemd.exec.xml;h=a9e54cb03b1d573368dc3feb371212238a5c00d7;hb=48b5804a48b2b629fa793cc93bcb4a9c6edf9962;hp=207592dda70c7c42198d167b4a480edc4098b726;hpb=613b411c947635136637f8cdd66b94512f761eab;p=elogind.git diff --git a/man/systemd.exec.xml b/man/systemd.exec.xml index 207592dda..a9e54cb03 100644 --- a/man/systemd.exec.xml +++ b/man/systemd.exec.xml @@ -295,9 +295,11 @@ for the assignment. Example: - Environment="VAR1=word1 word2" VAR2=word3 "VAR3=word 5 6" + Environment="VAR1=word1 word2" VAR2=word3 "VAR3=$word 5 6" gives three variables VAR1, - VAR2, VAR3. + VAR2, VAR3 + with the values word1 word2, + word3, $word 5 6. @@ -470,9 +472,9 @@ StandardError= Controls where file - descriptor 2 (STDERR) of the executed - processes is connected to. The - available options are identical to + descriptor 2 (standard error) of the + executed processes is connected to. + The available options are identical to those of StandardOutput=, with one exception: if set to @@ -489,8 +491,8 @@ TTYPath= Sets the terminal - device node to use if standard input, - output or stderr are connected to a + device node to use if standard input, output, + or error are connected to a TTY (see above). Defaults to /dev/console. @@ -847,7 +849,7 @@ processes and mounts private /tmp and /var/tmp - directories inside it, that are not + directories inside it that is not shared by processes outside of the namespace. This is useful to secure access to temporary files of the @@ -857,7 +859,7 @@ /var/tmp impossible. All temporary data created by service will be removed after - service is stopped. Defaults to + the service is stopped. Defaults to false. Note that it is possible to run two or more units within the same private /tmp and @@ -892,6 +894,24 @@ for details. + + PrivateDevices= + + Takes a boolean + argument. If true, sets up a new /dev + namespace for the executed processes + and only adds API pseudo devices such + as /dev/null, + /dev/zero or + /dev/random to + it, but no physical devices such as + /dev/sda. This is + useful to securely turn off physical + device access by the executed + process. Defaults to + false. + + MountFlags= @@ -930,6 +950,23 @@ this service. + + SELinuxContext= + + Set the SELinux + security context of the executed + process. If set, this will override + the automated domain + transition. However, the policy still + needs to autorize the transition. This + directive is ignored if SELinux is + disabled. If prefixed by + -, all errors will + be ignored. See + setexeccon3 + for details. + + IgnoreSIGPIPE= @@ -964,7 +1001,7 @@ list of system call names. If this setting is used, all system calls executed by the unit - process except for the listed ones + processes except for the listed ones will result in immediate process termination with the SIGSYS signal @@ -992,7 +1029,97 @@ merged. If the empty string is assigned, the filter is reset, all prior assignments will have no - effect. + effect. + + If you specify both types of + this option (i.e. whitelisting and + blacklisting) the first encountered + will take precedence and will dictate + the default action (termination or + approval of a system call). Then the + next occurrences of this option will + add or delete the listed system calls + from the set of the filtered system + calls, depending of its type and the + default action (e.g. You have started + with a whitelisting of + read and + write and right + after it add a blacklisting of + write, then + write will be + removed from the set). + + + Note that setting + SystemCallFilter= + implies a + SystemCallArchitectures= + setting of native + (see below), unless that option is + configured otherwise. + + + + SystemCallErrorNumber= + + Takes an + errno error number + name to return when the system call + filter configured with + SystemCallFilter= + is triggered, instead of terminating + the process immediately. Takes an + error name such as + EPERM, + EACCES or + EUCLEAN. When this + setting is not used, or when the empty + string is assigned the process will be + terminated immediately when the filter + is triggered. + + + + SystemCallArchitectures= + + Takes a space + separated list of architecture + identifiers to include in the system + call filter. The known architecture + identifiers are + x86, + x86-64, + x32, + arm as well as the + special identifier + native. Only system + calls of the specified architectures + will be permitted to processes of this + unit. This is an effective way to + disable compatibility with non-native + architectures for processes, for + example to prohibit execution of 32bit + x86 binaries on 64bit x86-64 + systems. The special + native identifier + implicitly maps to the native + architecture of the system (or more + strictly: to the architecture the + system manager is compiled for). Note + that setting this option to a + non-empty list implies that + native is included + too. By default this option is set to + the empty list, i.e. no architecture + system call filtering is applied. Note + that configuring a system call filter + with + SystemCallFilter= + (above) implies a + native architecture + list, unless configured + otherwise.