Se sei su una distribuzione basata su systemd con util-linux
versione inferiore alla 2.27, vedrai questo comportamento non intuitivo. Questo perché CLONE_NEWNS
propaga flag come shared
a seconda di un'impostazione nel kernel. Questa impostazione è normalmente private
, ma systemd lo modifica in shared
. A partire dal util-linux
2.27, è stata apportata una patch che modifica il comportamento predefinito del unshare
comando per usare private
come comportamento di propagazione predefinito per essere più intuitivo.
Soluzione
Se sei su un sistema systemd con util-linux
prima della versione 2.27, è necessario rimontare il filesystem root dopo eseguendo unshare
comando:
# unshare --mount -- /bin/bash
# mount --make-private -o remount /
Se sei su un sistema systemd con util-linux
versione 2.27 o successiva, dovrebbe funzionare come previsto nell'esempio che hai fornito nella tua domanda, testualmente, senza la necessità di rimontare. In caso contrario, passa --propagation private
al unshare
comando per rendere privata la propagazione dello spazio dei nomi di montaggio.