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.