Wenn Sie eine systemd-basierte Distribution mit einem util-linux
verwenden Version kleiner als 2.27, werden Sie dieses nicht intuitive Verhalten sehen. Das liegt daran, dass CLONE_NEWNS
gibt Flags wie shared
weiter abhängig von einer Einstellung im Kernel. Diese Einstellung ist normalerweise private
, aber systemd ändert dies in shared
. Ab util-linux
2.27 wurde ein Patch erstellt, der das Standardverhalten von unshare
ändert Befehl zur Verwendung von private
als das standardmäßige Ausbreitungsverhalten, um intuitiver zu sein.
Lösung
Wenn Sie sich auf einem systemd-System mit util-linux
befinden vor Version 2.27 müssen Sie das Root-Dateisystem nach neu einhängen Ausführen von unshare
Befehl:
# unshare --mount -- /bin/bash
# mount --make-private -o remount /
Wenn Sie sich auf einem systemd-System mit util-linux
befinden Version 2.27 oder höher sollte es wie erwartet in dem Beispiel funktionieren, das Sie in Ihrer Frage wörtlich gegeben haben, ohne dass ein erneutes Mounten erforderlich ist. Wenn nicht, übergeben Sie --propagation private
an die unshare
Befehl, um die Weitergabe des Mount-Namensraums als privat zu erzwingen.