]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
man/systemd.exec: document that API fs are required to setup namespacing 29450/head
authorMike Yuan <me@yhndnzj.com>
Wed, 4 Oct 2023 21:04:12 +0000 (05:04 +0800)
committerMike Yuan <me@yhndnzj.com>
Wed, 4 Oct 2023 21:31:05 +0000 (05:31 +0800)
Closes #27997

man/systemd.exec.xml

index 54f1dc7e5ce078434f15b055c58f2969ced4b78c..1988d624cf03d3f34e498264bbc695337cfe14d9 100644 (file)
@@ -1659,12 +1659,15 @@ StateDirectory=aaa/bbb ccc</programlisting>
         i.e. writable mounts appearing on the host will be writable in the unit's namespace too, even when propagated
         below a path marked with <varname>ReadOnlyPaths=</varname>! Restricting access with these options hence does
         not extend to submounts of a directory that are created later on. This means the lock-down offered by that
-        setting is not complete, and does not offer full protection. </para>
+        setting is not complete, and does not offer full protection.</para>
 
         <para>Note that the effect of these settings may be undone by privileged processes. In order to set up an
         effective sandboxed environment for a unit it is thus recommended to combine these settings with either
-        <varname>CapabilityBoundingSet=~CAP_SYS_ADMIN</varname> or
-        <varname>SystemCallFilter=~@mount</varname>.</para>
+        <varname>CapabilityBoundingSet=~CAP_SYS_ADMIN</varname> or <varname>SystemCallFilter=~@mount</varname>.</para>
+
+        <para>Please be extra careful when applying these options to API file systems (a list of them could be
+        found in <varname>MountAPIVPS=</varname>), since they may be required for basic system functionalities.
+        Moreover, <filename>/run/</filename> needs to be writable for setting up mount namespace and propagation.</para>
 
         <para>Simple allow-list example using these directives:
         <programlisting>[Service]