Tuto 4 ready
This commit is contained in:
parent
fb994050db
commit
c960136430
18 changed files with 536 additions and 340 deletions
|
|
@ -1,9 +1,9 @@
|
|||
\newpage
|
||||
|
||||
Le *namespace* `PID` {#pid-ns}
|
||||
=====================
|
||||
--------------------
|
||||
|
||||
## Introduction {#pid-ns-intro}
|
||||
### Introduction {#pid-ns-intro}
|
||||
|
||||
L'espace de noms `PID` est celui qui va nous permettre d'isoler un sous-arbre
|
||||
de processus en créant un nouvel arbre, qui aura son propre processus considéré
|
||||
|
|
@ -18,7 +18,7 @@ pas de PID en cours de route, puisqu'il dépend du *namespace* dans lequel il se
|
|||
trouve.
|
||||
|
||||
|
||||
## Isolons !
|
||||
### Isolons !
|
||||
|
||||
Première étape s'isoler :
|
||||
|
||||
|
|
@ -32,7 +32,7 @@ Nous utilisons ici l'option `-f`, pour que le passage dans le nouvel espace de
|
|||
noms des PID soit effectif (cf. [Introduction](#pid-ns-intro)).
|
||||
|
||||
Un coup d'œil à `top` ou `ps aux` devrait nous montrer que l'on est maintenant
|
||||
seul processus ... pourtant, il n'en est rien, ces deux commandes continuent
|
||||
le seul processus ... pourtant, il n'en est rien, ces deux commandes continuent
|
||||
d'afficher la liste complète des processus de notre système.
|
||||
|
||||
Cela est dû au fait que ces deux programmes, sous Linux, se basent sur le
|
||||
|
|
@ -45,7 +45,7 @@ notre système initial. Pour s'en sortir, il est nécessaire de s'isoler dans un
|
|||
*namespace* `mount` séparé.
|
||||
|
||||
|
||||
### Double isolation : ajout du *namespace* `mount`
|
||||
#### Double isolation : ajout du *namespace* `mount`\
|
||||
|
||||
Voici la nouvelle ligne de commande que l'on va utiliser :
|
||||
|
||||
|
|
@ -62,7 +62,7 @@ Cette fois, `top` et `ps` nous rapportent bien que l'on est seul dans notre
|
|||
*namespace*.
|
||||
|
||||
|
||||
## Arborescence à l'extérieur du *namespace*
|
||||
### Arborescence à l'extérieur du *namespace*
|
||||
|
||||
Lors de notre première tentative de `top`, lorsque `/proc` était encore monté
|
||||
sur le `procfs` de l'espace de noms initial : notre processus (au PID 1 dans
|
||||
|
|
@ -79,14 +79,14 @@ parent, il faut le faire avec son identifiant de processus du même *namespace*
|
|||
que le processus appelant.
|
||||
|
||||
|
||||
## Processus orphelins et `nsenter`
|
||||
### Processus orphelins et `nsenter`
|
||||
|
||||
Au sein d'un *namespace*, le processus au PID 1 est considéré comme le
|
||||
programme `init`, les mêmes propriétés s'appliquent donc.
|
||||
|
||||
Si un processus est orphelin, il est donc affiché comme étant fils du PID 1
|
||||
dans son *namespace*[^PR_SET_CHILD_SUBREAPER] ; il n'est pas sorti de l'espace
|
||||
de nom.
|
||||
de noms.
|
||||
|
||||
[^PR_SET_CHILD_SUBREAPER]: en réalité, ce comportement est lié à la propriété
|
||||
`PR_SET_CHILD_SUBREAPER`, qui peut être définie pour n'importe quel processus
|
||||
|
|
@ -101,7 +101,7 @@ l'extérieur du conteneur, les propriétés d'`init` sont biens appliquées à
|
|||
l'intérieur pour conserver un comportement cohérent.
|
||||
|
||||
|
||||
## Aller plus loin {-}
|
||||
### Aller plus loin {-}
|
||||
|
||||
N'hésitez pas à jeter un œil à la page de manuel consacré à cet espace de
|
||||
N'hésitez pas à jeter un œil à la page de manuel consacrée à cet espace de
|
||||
noms : `pid_namespaces(7)`.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue