[util-linux]. Permite ejecutar un programa en un espacio de nombres [namespace] separado del resto del sistema con su red, PID, montaje, usuario, etc. A diferencia de Docker o LXC, no crea una "caja" completa, sino que aísla un solo proceso o un conjunto de ellos de manera temporal. El núcleo de Linux utiliza los namespaces para particionar los recursos del sistema y proporcionar una vista aislada a los procesos y unshare aprovecha esta funcionalidad para permitir que un proceso tenga su entrono aislado.
# unshare --net bash
# unshare --pid --fork bash
# unshare --mount bash
# unshare --mount --pid --fork --net --user --map-root-user bash
# unshare --mount --pid --fork --net --user bash
Nota.- El flag "--map-root-user" permite que el usuario que ejecuta el comando, incluso si no es root, se "mapee" como root dentro del nuevo namespace. Esto significa que dentro de la shell, tendrá privilegios de root para ese namespace, pero no en el sistema principal. Esto es una técnica común utilizada por herramientas de seguridad y sandboxing para limitar el daño potencial de un proceso malicioso.