You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Minimal tool (when compiled with CFLAGS='-s', the binary is around
10Kb) for launching a program into a new user namespace and have
multiple users mapped.
The subuidmap and subgidmap tools are required for setting up the
user namespace.
The current user is mapped to the root user into the namespace, while
any additional uid/gid in /etc/subuid and /etc/subgid is mapped
starting with the ID 1.
Build
Assuming you have the autotools and gcc installed:
$ ./autogen.sh && ./configure && make
Options
Some options are available:
a: create all the namespaces
c: create a CGroup namespace
i: create an IPC namespace
m: create a mount namespace
n: create a network namespace
p: create a PID namespace and fork
u: create an UTS namespace
P: mount a new /proc
S: mount a new /sys
N: configure the network with slirp4netns
Examples
$ become-root unshare -m echo hi from a new user and mount namespacehi from a new user and mount namespace
$ become-root cat /proc/self/uid_map 0 1000 1 1 110000 65536
$ become-root iduid=0(root) gid=0(root) groups=0(root),65534(nfsnobody) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
$ become-root -aPS ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.0 246344 2016 pts/7 R+ 13:58 0:00 ps aux
About
minimal tool for creating a new user namespace with multiple UIDs/GIDs mapped inside