Fix some book issues
This commit is contained in:
parent
6e135a40de
commit
3d8dd24b78
30 changed files with 109 additions and 110 deletions
|
|
@ -1,5 +1,3 @@
|
|||
\newpage
|
||||
|
||||
::::: {.exercice}
|
||||
|
||||
### Comparaison de *namespace* -- `cmpns.sh`
|
||||
|
|
@ -31,6 +29,7 @@ que l'on cherche à comparer.
|
|||
- uts: same
|
||||
```
|
||||
</div>
|
||||
\
|
||||
|
||||
<div lang="en-US">
|
||||
```
|
||||
|
|
|
|||
|
|
@ -19,32 +19,32 @@ Pour savoir si vous avez réussi, comparez les sorties des commandes :
|
|||
- ...
|
||||
|
||||
|
||||
### Tests {-}
|
||||
Voici quelques exemples pour tester :
|
||||
|
||||
<div lang="en-US">
|
||||
```
|
||||
42sh$ docker run --name mywebserver -d -p 80:80 nginx
|
||||
42sh$ docker run --name mywebsrv -d -p 80:80 nginx
|
||||
d63ceae863956f8312aca60b7a57fbcc1fdf679ae4c90c5d9455405005d4980a
|
||||
42sh$ docker container inspect --format '{{ .State.Pid }}' mywebserver
|
||||
42sh$ docker container inspect --format '{{ .State.Pid }}' mywebsrv
|
||||
234269
|
||||
|
||||
42sh# ./mydocker_exec mywebserver ip address
|
||||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group def
|
||||
42sh# ./mydocker_exec mywebsrv ip address
|
||||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
|
||||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
|
||||
inet 127.0.0.1/8 scope host lo
|
||||
valid_lft forever preferred_lft forever
|
||||
13: eth0@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP group def
|
||||
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
|
||||
13: eth0@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP
|
||||
link/ether 02:42:ac:11:00:02 brd ff:[...]:ff link-netnsid 0
|
||||
inet 172.17.0.1/16 scope global eth0
|
||||
valid_lft forever preferred_lft forever
|
||||
|
||||
42sh# hostname
|
||||
koala.zoo.paris
|
||||
42sh# ./mydocker_exec mywebserver hostname
|
||||
42sh# ./mydocker_exec mywebsrv hostname
|
||||
d63ceae86395
|
||||
|
||||
42sh# ./mydocker_exec mywebserver mount
|
||||
42sh# ./mydocker_exec mywebserver ps aux
|
||||
42sh# ./mydocker_exec mywebsrv mount
|
||||
42sh# ./mydocker_exec mywebsrv ps aux
|
||||
...
|
||||
```
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ Nous allons voir dans cette partie plusieurs méthodes pour utiliser ces espaces
|
|||
de noms.
|
||||
|
||||
|
||||
#### Avec son coquillage
|
||||
#### Dans son shell
|
||||
|
||||
De la même manière que l'on peut utiliser l'appel système `chroot(2)` depuis un
|
||||
shell via la commande `chroot(1)`, la commande `unshare(1)` permet de faire le
|
||||
|
|
@ -94,10 +94,11 @@ static char child_stack[STACKSIZE];
|
|||
|
||||
int clone_flags = CLONE_CGROUP | CLONE_NEWNET | SIGCHLD;
|
||||
|
||||
pid_t pid = clone(do_execvp, // First function executed by child
|
||||
child_stack + STACKSIZE, // Assume stack grows downward
|
||||
clone_flags, // clone specials flags
|
||||
args); // Arguments to pass to do_execvp
|
||||
pid_t pid = clone(do_execvp, // First function executed by child
|
||||
child_stack + STACKSIZE, // Assume stack grows downward
|
||||
clone_flags, // clone specials flags
|
||||
args); // Arguments to pass to
|
||||
// do_execvp
|
||||
```
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -33,31 +33,31 @@ d'avoir une vision arborescente des points de montage en cours d'utilisation.
|
|||
<div lang="en-US">
|
||||
```
|
||||
TARGET SOURCE FSTYPE OPTIONS
|
||||
/ /dev/sda1 ext4 rw,relatime,data=ordered
|
||||
/proc proc proc rw,nosuid,nodev,noexec,relatime
|
||||
/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime
|
||||
├─/sys/kernel/security securityfs securityfs rw,nosuid,nodev,noexec,relatime
|
||||
/ /dev/sda1 ext4 rw,data=ordered,...
|
||||
/proc proc proc rw,nosuid,nodev,...
|
||||
/sys sysfs sysfs rw,nosuid,nodev,...
|
||||
├─/sys/kernel/security securityfs securityfs rw,nosuid,nodev,...
|
||||
├─/sys/firmware/efi/efivars efivarfs efivarfs ro,relatime
|
||||
└─/sys/fs/cgroup cgroup_root tmpfs rw,nosuid,nodev,noexec,relatime
|
||||
├─/sys/fs/cgroup/unified none cgroup2 rw,nosuid,nodev,noexec,relatime
|
||||
├─/sys/fs/cgroup/cpuset cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset
|
||||
├─/sys/fs/cgroup/cpu cpu cgroup rw,nosuid,nodev,noexec,relatime,cpu
|
||||
├─/sys/fs/cgroup/cpuacct cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpuacct
|
||||
├─/sys/fs/cgroup/blkio blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio
|
||||
├─/sys/fs/cgroup/memory memory cgroup rw,nosuid,nodev,noexec,relatime,memory
|
||||
├─/sys/fs/cgroup/devices devices cgroup rw,nosuid,nodev,noexec,relatime,devices
|
||||
├─/sys/fs/cgroup/freezer freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer
|
||||
├─/sys/fs/cgroup/net_cls net_cls cgroup rw,nosuid,nodev,noexec,relatime,net_cls
|
||||
├─/sys/fs/cgroup/perf_event perf_event cgroup rw,nosuid,nodev,noexec,relatime,p_event
|
||||
├─/sys/fs/cgroup/net_prio net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_pri
|
||||
└─/sys/fs/cgroup/pids pids cgroup rw,nosuid,nodev,noexec,relatime,pids
|
||||
/dev devtmpfs devtmpfs rw,nosuid,size=10240k,nr_inodes=486250
|
||||
├─/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=5,ptmxmod
|
||||
└─/sys/fs/cgroup cgroup_root tmpfs rw,nosuid,...
|
||||
├─/sys/fs/cgroup/unified none cgroup2 rw,nsdelegate,...
|
||||
├─/sys/fs/cgroup/cpuset cpuset cgroup rw,nosuid,cpuset,...
|
||||
├─/sys/fs/cgroup/cpu cpu cgroup rw,nosuid,cpu,...
|
||||
├─/sys/fs/cgroup/cpuacct cpuacct cgroup rw,nosuid,cpuacct,...
|
||||
├─/sys/fs/cgroup/blkio blkio cgroup rw,nosuid,blkio,...
|
||||
├─/sys/fs/cgroup/memory memory cgroup rw,nosuid,memory,...
|
||||
├─/sys/fs/cgroup/devices devices cgroup rw,nosuid,devices,...
|
||||
├─/sys/fs/cgroup/freezer freezer cgroup rw,nosuid,freezer,...
|
||||
├─/sys/fs/cgroup/net_cls net_cls cgroup rw,nosuid,net_cls,...
|
||||
├─/sys/fs/cgroup/perf_event perf_event cgroup rw,nosuid,p_event,...
|
||||
├─/sys/fs/cgroup/net_prio net_prio cgroup rw,nosuid,net_pri,...
|
||||
└─/sys/fs/cgroup/pids pids cgroup rw,nosuid,pids,...
|
||||
/dev devtmpfs devtmpfs rw,nosuid,size=...
|
||||
├─/dev/pts devpts devpts rw,nosuid,gid=5,...
|
||||
├─/dev/shm tmpfs tmpfs rw
|
||||
└─/dev/mqueue mqueue mqueue rw,nosuid,nodev,noexec,relatime
|
||||
/home /dev/sda3 ext4 rw,nosuid,nodev,relatime,data=ordered
|
||||
/run tmpfs tmpfs rw,nosuid,nodev,noexec,mode=755
|
||||
/tmp tmpfs tmpfs rw,nosuid,nodev,noexec,relatime
|
||||
└─/dev/mqueue mqueue mqueue rw,nosuid,nodev,...
|
||||
/home /dev/sda3 ext4 rw,nosuid,nodev,...
|
||||
/run tmpfs tmpfs rw,mode=755,...
|
||||
/tmp tmpfs tmpfs rw,nosuid,nodev,...
|
||||
```
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -28,16 +28,16 @@ pointent pas vers une destination valide :
|
|||
<div lang="en-US">
|
||||
```bash
|
||||
42sh$ ls -l /proc/self/ns
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 cgroup -> 'cgroup:[4026531835]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 ipc -> 'ipc:[4026531839]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 mnt -> 'mnt:[4026531840]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 net -> 'net:[4026532008]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 pid -> 'pid:[4026531836]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 pid_for_children -> 'pid:[4026531836]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 time -> 'time:[4026531834]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 time_for_children -> 'time:[4026531834]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 user -> 'user:[4026531837]'
|
||||
lrwxrwxrwx 1 nemunaire 0 1 oct. 23:42 uts -> 'uts:[4026531838]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 cgroup -> 'cgroup:[4026531835]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 ipc -> 'ipc:[4026531839]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 mnt -> 'mnt:[4026531840]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 net -> 'net:[4026532008]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 pid -> 'pid:[4026531836]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 pid_for_children -> 'pid:[4026531836]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 time -> 'time:[4026531834]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 time_for_children -> 'time:[4026531834]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 user -> 'user:[4026531837]'
|
||||
lrwxrwxrwx 1 nemunaire 1 oct. 23:42 uts -> 'uts:[4026531838]'
|
||||
|
||||
```
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -99,7 +99,8 @@ des groupes au lieu des utilisateurs.
|
|||
|
||||
<div lang="en-US">
|
||||
```bash
|
||||
42sh$ unshare --mount --pid --mount-proc --fork --net --user --map-root-user bash
|
||||
42sh$ unshare --mount --pid --mount-proc --fork --net --user \
|
||||
--map-root-user bash
|
||||
```
|
||||
</div>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue