Provided by: schroot_1.6.13-7_amd64 bug

NOM

       schroot — entrer de manière sécurisée dans un environnement de chroot

RÉSUMÉ

       schroot [-h|--help | -V|--version | -l|--list | -i|--info | --config | --location | --automatic-session |
       -b|--begin-session   |   --recover-session   |  -r|--run-session  |  -e|--end-session]  [-f|--force]  [-n
       nom-de-session|--session-name=nom-de-session]      [-d       répertoire|--directory=répertoire]       [-u
       utilisateur|--user=utilisateur]    [-u   utilisateur|--user=utilisateur]   [-p|--preserve-environment][-s
       shell|--shell=shell] [-q |--quiet | -v|--verbose] [-c chroot|--chroot=chroot | --all  |  --all-chroots  |
       --all-source-chroots  |  --all-sessions]  |  --exclude-aliases [-o|--option=clé=valeur]  [--] [COMMANDE [
       ARG1 [ ARG2 [ ARGn]]]]

DESCRIPTION

       schroot autorise l'utilisateur à exécuter une commande ou un interpréteur de commande de  connexion  dans
       un  environnement  de chroot. Si aucune commande n'est précisée, un interpréteur de commande de connexion
       sera démarré dans le répertoire de travail courant de l'utilisateur à l'intérieur du chroot.

       La commande est un programme plus autant d'arguments optionnels que requis.  Chaque  argument  doit  être
       déclaré séparément.

       Le  répertoire dans lequel la commande ou l'interpréteur de commande de connexion sont exécutés dépend du
       contexte. Voir l'option --directory ci-dessous pour une description complète.

       Toute utilisation de chroot sera enregistrée dans les journaux du système. Dans certaines  circonstances,
       l'utilisateur pourrait devoir s'identifier ; consultez la section “Authentification” ci-dessous.

       Si  aucun  chroot  n'est  spécifié, le nom de chroot ou alias ‘default’ sera utilisé à la place. Cela est
       équivalent à “--chroot=default”.

APERÇU

       Il est souvent nécessaire d'exécuter des  programmes  dans  des  environnements  virtualisés  plutôt  que
       directement  sur le système hôte. À la différence des autres systèmes de virtualisation comme kvm ou Xen,
       schroot ne virtualise pas le système en entier ; il virtualise  seulement  le  système  de  fichiers,  et
       certaines  parties  du  système  de  fichiers  peuvent  toujours  être  partagées avec l'hôte. Il est par
       conséquent rapide, léger et flexible. Cependant, il ne virtualise pas  les  autres  aspects  du  système,
       comme la mémoire partagée, le réseau, les périphériques, etc., et par conséquent peut être moins sécurisé
       que  d'autres  systèmes,  en  fonction  de  l'utilisation  voulue. Des exemples d'utilisations connues de
       schroot sont :

       •      Exécuter des programmes non fiables dans un bac à sable ; de  cette  façon,  ils  ne  peuvent  pas
              interférer  avec les fichiers du système hôte ; cela peut également être utilisé pour diminuer les
              dommages que causerait la compromission d'un service sur l'hôte.

       •      Utiliser un environnement défini ou propre pour garantir la reproductibilité et l'intégrité  d'une
              tâche donnée.

       •      Utiliser  une  version  différente  d'un système d'exploitation, ou même un système d'exploitation
              complètement différent, par exemple une distribution GNU/Linux différente.

       •      Exécuter des programmes 32 bits sur un système hôte 64 bits, en utilisant un chroot 32 bits.

       •      Construire automatiquement des paquets Debian en utilisant sbuild(1) qui construit  chaque  paquet
              dans un instantané chroot dédié quand les instantanés LVM ou les unions sont utilisés.

       •      Prendre  en  charge  des  images multiples de systèmes dans une installation de grappe où modifier
              l'image de base est consommatrice de temps et/ou  prendre  en  charge  toutes  les  configurations
              requises  par les utilisateurs est difficile : différents chroots peuvent prendre en charge toutes
              les configurations différentes requises, et l'accès peut être donné aux utilisateurs de la  grappe
              pour  les chroots dont ils ont besoin (ce qui peut inclure des accès root pour les utilisateurs de
              confiance afin qu'ils puissent entretenir leurs propres images)

       Un chroot peut être utilisé directement en exécutant chroot(8), mais les utilisateurs  standard  ne  sont
       pas  autorisés  à  exécuter  cette commande. schroot autorise l'accès à des chroots pour des utilisateurs
       normaux en utilisant le même mécanisme, mais avec plusieurs caractéristiques supplémentaires.  Alors  que
       schroot  utilise  un  répertoire  comme chroot exactement comme chroot(8), il n'a pas besoin que celui-ci
       soit un répertoire ordinaire du système de fichier. Bien que cela soit la valeur par  défaut,  le  chroot
       peut également être créé à partir d'un fichier, d'un système de fichiers, incluant les instantanés LVM et
       Btrfs  et  les  montages  «  loopback », ou composé d'une surcouche unionfs. schroot étant extensible par
       l'utilisateur, les possibilités de création de chroot provenant de sources différentes  ne  sont  limités
       que  par  votre  imagination.  schroot  effectue des vérifications de permission et autorise des mises en
       place automatiques supplémentaires de l'environnement de chroot, comme le montage de systèmes de fichiers
       supplémentaires et d'autres tâches de configuration. Cette  mise  en  place  automatique  est  faite  par
       l'action  de  scripts de mise en place qui peuvent être configurés et étendus pour effectuer toute action
       nécessaire. Les actions typiques incluent  le  montage  du  répertoire  personnel  de  l'utilisateur,  la
       configuration  du  réseau  et  des bases de données du système et même le démarrage de services. Ils sont
       également entièrement personnalisables par l'administrateur. Les scripts de mise en place  sont  exécutés
       pour  tous  les  types de chroot, à l'exception de ceux de type ‘plain’, le type de chroot le plus simple
       qui ne permet aucune mise en place automatique. La configuration de schroot est décrite  plus  en  détail
       dans schroot.conf(5).

OPTIONS

       schroot accepte les options suivantes :

   Actions
       -h, --help
              Afficher un résumé de l'aide.

       -V, --version
              Afficher les informations de version.

       -l, --list
              Lister tous les chroots disponibles.

       -i, --info
              Afficher des informations détaillées à propos des chroots spécifiés.

       --config
              Afficher  la  configuration  des  chroots  spécifiés. C'est utile pour tester que la configuration
              utilisée est la même que celle du fichier de configuration. Tout commentaire du  fichier  original
              est omis.

       --location
              Afficher  la  localisation  (chemin)  des  chroots spécifiés. Noter que les types de chroot qui ne
              peuvent être utilisés qu'à l'intérieur d'une session n'auront  aucune  localisation  avant  d'être
              activés.

   Options générales
       -q, --quiet
              Afficher uniquement les messages essentiels.

       -v, --verbose
              Afficher tous les messages.

   Sélection de chroots.
       -c, --chroot=chroot
              Spécifier  un  chroot  ou une session active à utiliser. Cette option peut être utilisée plusieurs
              fois pour spécifier plus d'un chroot. Dans ce cas, elle a un effet similaire à --all.  Le  nom  du
              chroot  peut  être  préfixé par un espace de noms. Veuillez vous reporter à la section “Espaces de
              noms Chroot” ci-après.

       -a, --all
              Sélectionner tous les chroots, chroots source et  sessions  actives.  Quand  une  commande  a  été
              spécifiée, cette commande sera exécutée dans tous les chroots, chroots source et sessions actives.
              Si  --info a été utilisé, afficher les informations à propos de tous les chroots. Cette option n'a
              aucun sens si elle est utilisée avec un interpréteur de commande de connexion (« login  shell  »),
              aucune   commande   n'étant   spécifiée.   Cette   option   est   équivalente   à   “--all-chroots
              --all-source-chroots --all-sessions”.

       --all-chroots
              Sélectionner tous les chroots. Identique à --all, sauf que les  chroots  source  et  les  sessions
              actives ne sont pas pris en compte.

       --all-sessions
              Sélectionner  toutes  les sessions actives. Identique à --all, sauf que les chroots et les chroots
              source ne sont pas pris en compte.

       --all-source-chroots
              Sélectionner tous les chroots source. Identique à --all, sauf que les chroots et les  sessions  ne
              sont pas pris en compte.

       --exclude-aliases
              Ne  pas sélectionner les alias en plus des chroots. Cela permet de s'assurer que seuls les chroots
              réels sont sélectionnés et qu'ils ne sont listés qu'une seule fois.

   Environnement de chroot
       -d, --directory=répertoire
              Se déplacer dans le répertoire dans le chroot avant d'exécuter la commande  ou  l'interpréteur  de
              commande  de  connexion.  Si  le répertoire n'est pas disponible, schroot se terminera par un état
              d'erreur.

              Le comportement par défaut est comme suit (tous les chemins de répertoire sont  à  l'intérieur  du
              chroot).  Un  interpréteur  de  commande  de  connexion  est exécuté dans le répertoire de travail
              courant. S'il n'est pas disponible, $HOME sera essayé (quand --preserve-environment est  utilisé),
              ensuite  le  répertoire  personnel  de l'utilisateur, et finalement / à l'intérieur du chroot. Une
              commande est toujours exécutée dans le répertoire de travail courant à l'intérieur du  chroot.  Si
              aucun des répertoires n'est disponible, schroot se terminera avec un état d'erreur.

       -u, --user=utilisateur
              Exécuter en tant qu'utilisateur différent. Par défaut, la commande est exécutée avec l'utilisateur
              courant. Si nécessaire, l'utilisateur peut avoir besoin de s'identifier avec un mot de passe. Pour
              plus d'informations, consultez la section “Authentification”, ci-dessous.

       -p, --preserve-environment
              Préserver l'environnement de l'utilisateur à l'intérieur de l'environnement de chroot. Par défaut,
              un  environnement  propre  est  utilisé  ;  cette  option  copie  l'ensemble de l'environnement de
              l'utilisateur et le met en place dans la session. Les variables  d'environnement  autorisées  sont
              soumises à certaines restrictions ; voir la section “Environnement”, ci-dessous.

       -s, -shell=shell
              Utiliser  shell  en  tant  qu'interpréteur  de  commande  de  connexion.  Lors de l'exécution d'un
              interpréteur de commande de connexion  plusieurs  interpréteurs  de  commandes  potentiels  seront
              considérés  dans  cet  ordre  :  la  commande  dans la variable d'environnement SHELL (si l'option
              --preserve-environment est utilisée ou si  preserve-environment  est  activé),  l'interpréteur  de
              commandes  de  l'utilisateur  dans  la  base de données ‘passwd’, /bin/bash et finalement /bin/sh.
              Cette option écrase cette liste et utilisera l'interpréteur de commandes  spécifié.  Cette  option
              écrase également la clé de configuration shell si définie.

       -o, --option=clé=valeur
              Définir  une option. Les valeurs des clés de configuration sélectionnées dans schroot.conf peuvent
              être modifiées en utilisant cette  option.  Les  clés  doivent  être  présentes  dans  la  clé  de
              configuration  user-modifiable-keys  dans schroot.conf, à moins que la clé user-modifiable-keys ne
              soit exécutée par le superutilisateur (ou déplacée vers lui). Les clés et les valeurs définies ici
              seront définies dans l'environnement des scripts de mise en place et peuvent par  conséquent  être
              utilisées pour personnaliser le chroot pour chaque session.

   Actions de session
       --automatic-session
              Démarrer, exécuter et terminer une session automatiquement. C'est l'action par défaut, et donc n'a
              pas besoin d'être spécifiée en opération normale.

       -b, --begin-session
              Débuter  une  session.  Un  identifiant  unique  de  session  est  renvoyé sur la sortie standard.
              L'identifiant de session est nécessaire pour utiliser les autres options  de  session.  Notez  que
              l'identifiant de session peut être spécifié avec l'option --session-name.

       --recover-session
              Restaurer  une  session  existante. Si une session existante est devenue inaccessible, par exemple
              démontée à cause d'un redémarrage, cette option permettra que la session soit disponible pour être
              utilisée de nouveau, par exemple en la remontant.  L'identifiant  de  session  est  spécifié  avec
              l'option --chroot.

       -r, --run-session
              Lancer une session existante. L'identifiant de session est spécifié avec l'option --chroot.

       -e, --end-session
              Terminer une session existante. L'identifiant de session est spécifié avec l'option --chroot.

   Options de session
       -n, --session-name=nom-de-session
              Nommer  une session. Le nom-de-session spécifié remplace le nom de session par défaut contenant un
              identifiant de session généré  automatiquement.  Le  nom  de  session  ne  doit  pas  contenir  de
              qualificatif  d'espace  de noms, parce que les sessions sont toujours créées dans l'espace de noms
              ‘session:’. Le nom de  session  est  aussi  sujet  aux  restrictions  de  dénomination  de  chroot
              documentées dans schroot.conf(5).

       -f, --force
              Forcer une opération de session, même si elle aurait autrement échoué. Cela peut être utilisé pour
              forcer  la  fin  d'une session, même s'il y a des utilisateurs actifs. Cela ne garantit pas que la
              session se terminera proprement ; par exemple, les  systèmes  de  fichiers  peuvent  ne  pas  être
              démontés.

   Séparateur
       --     Fin  des  options.  Utilisé  pour  indiquer  la  fin  des  options de schroot ; toutes les options
              suivantes seront passées à la commande exécutée, au lieu de schroot.

AUTHENTIFICATION

       Si l'utilisateur n'est pas un utilisateur autorisé,  ou  membre  d'un  groupe  autorisé  (ou  en  cas  de
       changement  vers  root, un utilisateur root autorisé ou un groupe root autorisé) pour le chroot spécifié,
       les permissions seront immédiatement refusées. En cas de changement  d'utilisateur  et  si  l'utilisateur
       exécutant  la  commande  y  est  autorisé,  l'utilisateur  devra s'authentifier lui-même en utilisant les
       identifiants de l'utilisateur vers lequel le changement sera fait.

       Pour les systèmes prenant en charge le système d'authentification « Pluggable  Authentication  Modules  »
       (PAM),  schroot  utilisera  PAM  pour  l'authentification  et l'autorisation des utilisateurs. Si besoin,
       schroot demandera un mot de passe. Si PAM n'est pas disponible, toutes les  authentifications  échoueront
       automatiquement (le changement d'utilisateur sans PAM n'est pas pris en charge).

       Notez  que  quand  PAM est utilisé, l'utilisateur root n'obtiendra aucun privilège particulier par défaut
       dans le programme. Cependant, la configuration par défaut de PAM permet à root de se connecter  sans  mot
       de  passe  (pam_rootok.so),  mais  cela  peut  être  désactivé pour empêcher root d'accéder à des chroots
       quelconques sauf ceux spécifiquement permis.  Dans  une  telle  situation,  root  doit  être  ajouté  aux
       utilisateurs  ou  groupes  autorisés  comme  n'importe  quel  utilisateur  ou  groupe.  Si  PAM n'est pas
       disponible, l'utilisateur root pourra accéder à tous les chroots, même non explicitement autorisé.

ESPACES DE NOMS CHROOT

   Bases des espaces de noms
       Il y a trois types de chroot différents : les chroots ordinaires,  les  chroots  source  et  les  chroots
       session.  Ces  différents types de chroot sont séparés dans différents espaces de noms. Un espace de noms
       est un préfixe à un nom de chroot. Pour le moment, il y a trois espaces de noms : ‘chroot:’, ‘source:’ et
       ‘session:’. Utilisez --list --all pour lister tous les chroots disponibles dans tous les espaces de noms.
       Parce que ‘:’ est utilisé comme séparateur entre l'espace de noms et les noms de chroots,  il  n'est  pas
       permis d'utiliser ce caractère dans les noms de chroot.

       En  fonction  de l'action que vous demandez à schroot d'exécuter, celui-ci peut rechercher le chroot dans
       l'un de ces trois espaces de noms, ou un espace de noms particulier peut être spécifié. Par  exemple,  un
       chroot  nommé  “sid” est en fait nommé “chroot:sid” si l'espace de noms est inclus, mais l'espace de noms
       peut être omis pour la plupart des actions.

   Chroots source
       Certains types de chroot, par exemple les instantanés LVM ou Btrfs, fournissent des instantanés du chroot
       de type « copie en cas d'écriture » contrôlés par la session. Ils fournissent également un chroot  source
       pour  permettre  un accès facile au système de fichiers utilisé comme source de création d'instantané. Ce
       sont des chroots ordinaires également, mais désactivant la création d'instantané. Pour  un  chroot  nommé
       “sid-snapshot” (c'est-à-dire avec “chroot:sid-snapshot” comme nom complet  qualifié), il y aura également
       un chroot source nommé “source:sid-snapshot”. Les versions précédentes de schroot fournissent des chroots
       source  avec  un suffixe ‘-source’. Ces suffixes sont également fournis à des fins de compatibilité. Dans
       notre exemple il serait appelé “chroot:sid-snapshot-source”. Cette  dénomination  de  compatibilité  sera
       abandonnée  dans  une  version  future,  les  programmes et les scripts devraient donc être modifiés pour
       utiliser des noms utilisant les espaces de noms au lieu des vieux suffixes.

   Chroots session
       Toute session créée avec l'option --begin-session est  placée  dans  l'espace  de  noms  ‘session:’.  Une
       session  nommée  avec --session-name peut avoir différents noms, même un nom identique au chroot à partir
       duquel elle a été créée, à condition qu'il soit unique dans l'espace de noms.  Cela  n'était  pas  permis
       dans les versions précédentes de schroot qui n'avaient pas d'espaces de noms.

   Actions et espaces de noms par défaut
       Toutes les actions utilisent ‘chroot:’ comme espace de noms par défaut, avec quelques exceptions pour des
       actions  de sessions. --run-session, --recover-session et --end-session utilisent ‘session:’ comme espace
       de noms par défaut, car ces actions agissent sur les chroots session. Le résultat  est  que  l'espace  de
       noms  n'est  normalement  jamais requis, sauf quand vous avez besoin de travailler avec un chroot dans un
       espace de noms différent de celui par  défaut,  comme  lorsque  vous  utilisez  un  chroot  source.  Pour
       effectuer  une  sélection  de  chroot  sans ambiguïté, il est toujours possible d'utiliser le nom complet
       incluant l'espace de noms, même quand cela n'est pas strictement nécessaire.

PERFORMANCES

       Les performances  sur  certains  systèmes  de  fichiers,  par  exemple  Btrfs,  sont  mauvaises  lors  de
       l'utilisation  de  dpkg  à cause de la quantité d'opérations fsync à effectuer. Cela peut être limité par
       l'installation du paquet eatmydata et ensuite  par  l'ajout  de  eatmydata  à  la  clé  de  configuration
       command-prefix,  ce qui désactivera toutes les opérations fsync. Notez que cela ne doit être effectué que
       dans les chroots d'instantanés où la perte de  données  n'est  pas  un  problème.  C'est  utile  lors  de
       l'utilisation d'un chroot pour une construction de paquets, par exemple.

RÉPERTOIRES DE SUBSTITUTION

       Schroot  sélectionnera  un  répertoire approprié à utiliser à l'intérieur du chroot si un interpréteur de
       commande de connexion est utilisé ou une commande exécutée  et  également  si  l'option  --directory  est
       utilisée.  Dans  le cas de l'exécution directe ou en spécifiant explicitement un répertoire, seulement un
       répertoire sera utilisé par mesure de sécurité et  de  cohérence,  alors  que  pour  un  interpréteur  de
       commande  de  connexion  plusieurs  possibilités  peuvent être testées. La sous-section suivante liste la
       séquence de substitution pour chaque cas. CWD est le répertoire de travail courant, DIR est le répertoire
       spécifié par --directory.

   Interpréteur de commande de connexion
       ┌─────────────────────┬──────────────────────────────────────────┐
       │ Transition          │                                          │
       │ (Hôte → Chroot)     │ Commentaire                              │
       ├─────────────────────┼──────────────────────────────────────────┤
       │ CWD → CWD           │ Comportement  normal   (si   --directory │
       │                     │ n'est pas utilisé)                       │
       │ CWD → $HOME         │ Si      CWD      n'existe     pas     et │
       │                     │ --preserve-environment est utilisé       │
       │ CWD → passwd pw_dir │ Si     CWD     n'existe     pas      (ou │
       │                     │ --preserve-environment  est  utilisé  et │
       │                     │ aucun $HOME n'existe)                    │
       │ CWD → /             │ Aucun des répertoires ci-dessus n'existe │
       │ FAIL                │ Si / n'existe pas                        │
       └─────────────────────┴──────────────────────────────────────────┘

   Commande
       ┌─────────────────┬──────────────────────────────────────────┐
       │ Transition      │                                          │
       │ (Hôte → Chroot) │ Commentaire                              │
       ├─────────────────┼──────────────────────────────────────────┤
       │ CWD → CWD       │ Comportement  normal   (si   --directory │
       │                 │ n'est pas utilisé)                       │
       │ FAIL            │ Si CWD n'existe pas                      │
       └─────────────────┴──────────────────────────────────────────┘

       Aucune solution de repli ne devrait exister en toute circonstance.

   utilisation de --directory
       ┌─────────────────┬──────────────────────────────────────────┐
       │ Transition      │                                          │
       │ (Hôte → Chroot) │ Commentaire                              │
       ├─────────────────┼──────────────────────────────────────────┤
       │ CWD → DIR       │ Comportement normal                      │
       │ FAIL            │ Si CWD n'existe pas                      │
       └─────────────────┴──────────────────────────────────────────┘

       Aucune solution de repli ne devrait exister en toute circonstance.

   Débogage
       Notez que --debug=notice affichera la liste interne des répertoires de repli calculée pour la session.

EXEMPLES

   Lister les chroots disponibles
       % schroot -l↵
       chroot:default
       chroot:etch
       chroot:sid
       chroot:testing
       chroot:unstable

   Récupérer les informations d'un chroot
       % schroot -i -c sid↵
         ——— Chroot ———
         Name                   sid
         Description            Debian sid (unstable)
         Type                   plain
         Priority               3
         Users                  rleigh
         Groups                 sbuild
         Root Users
         Root Groups            sbuild
         Aliases                unstable unstable-sbuild unstable-p
       owerpc-sbuild
         Environment Filter     ^(BASH_ENV|CDPATH|ENV|HOSTALIASES|I\
       FS|KRB5_CONFIG|KRBCONFDIR|KRBTKFILE|KRB_CONF|LD_.*|LOCALDOMA\
       IN|NLSPATH|PATH_LOCALE|RES_OPTIONS|TERMINFO|TERMINFO_DIRS|TE\
       RMPATH)$
         Run Setup Scripts      true
         Script Configuration   script-defaults
         Session Managed        true
         Personality            linux32
         Location               /srv/chroot/sid

       Utilisez --all ou -c plusieurs fois pour utiliser plusieurs ou tous les chroots respectivement.

   Exécuter des commandes dans un chroot
       % schroot -c sid /bin/ls↵
       [sid chroot] Running command: “/bin/ls”
       CVS          sbuild-chroot.c   sbuild-session.h  schroot.conf.5
       Makefile     sbuild-chroot.h   schroot.1         schroot.conf.5.in
       Makefile.am  sbuild-config.c   schroot.1.in
       Makefile.in  sbuild-config.h   schroot.c
       pam          sbuild-session.c  schroot.conf
       % schroot -c sid -- ls -1 | head -n 5↵
       [sid chroot] Running command: “ls -1”
       ABOUT-NLS
       AUTHORS
       COPYING
       ChangeLog
       INSTALL

       Utilisez  --  pour  autoriser  les  options débutant avec ‘-’ ou ‘--’ pour la commande à exécuter dans le
       chroot. Cela empêche qu'elles soient interprétées en tant qu'options de schroot. Notez  que  la  première
       ligne  a  été affichée sur l'erreur standard et le reste sur la sortie standard. C'est intentionnel, pour
       que la sortie du programme exécuté dans le chroot puisse être redirigée à l'aide d'un pipe  si  besoin  ;
       les données seront les mêmes que si la commande était exécutée directement sur le système hôte.

   Changer d'utilisateur
       % schroot -c sid -u root↵
       Password:
       [sid chroot] (rleigh→root) Running login shell: “/bin/bash”
       #

       Si  l'utilisateur ‘rleigh’ était dans root-users de /etc/schroot/schroot.conf, ou un des groupes auxquels
       il appartient était dans root-groups, un accès root lui sera fourni sans authentification,  mais  l'étape
       d'autorisation PAM est toujours appliquée.

   Sessions
       Un  chroot  peut  être  nécessaire pour exécuter plus d'une commande. En particulier, quand le chroot est
       créé à la volée à partir d'un volume logique LVM ou d'un fichier sur le  disque,  il  est  nécessaire  de
       rendre  le chroot persistant pendant qu'une tâche donnée (ou un jeu de tâches) est exécutée. Les sessions
       existent pour cette raison. Pour les chroots de type simple comme ‘plain’ et  ‘directory’,  des  sessions
       peuvent être créées mais ne sont pas strictement nécessaires.

       Commençons par examiner un chroot capable d'utiliser des sessions :

       % schroot -i -c sid-snap↵
         ——— Chroot ———
         Name                   sid-snap
         Description            Debian sid snapshot
         Type                   lvm-snapshot
         Priority               3
         Users                  maks rleigh
         Groups                 sbuild
         Root Users
         Root Groups            root sbuild
         Aliases
         Environment Filter     ^(BASH_ENV|CDPATH|ENV|HOSTALIASES|I\
       FS|KRB5_CONFIG|KRBCONFDIR|KRBTKFILE|KRB_CONF|LD_.*|LOCALDOMA\
       IN|NLSPATH|PATH_LOCALE|RES_OPTIONS|TERMINFO|TERMINFO_DIRS|TE\
       RMPATH)$
         Run Setup Scripts      true
         Script Configuration   script-defaults
         Session Managed        true
         Personality            linux
         Device                 /dev/hda_vg/sid_chroot
         Mount Options          -o atime,async,user_xattr
         Source Users
         Source Groups          root rleigh
         Source Root Users
         Source Root Groups     root rleigh
         LVM Snapshot Options   --size 2G -c 128

       Notez que l'option Session Managed est définie à ‘true’. Cela est requis pour utiliser le gestionnaire de
       session  et est pris en charge par la plupart des types de chroot. Ensuite nous allons créer une nouvelle
       session :

       % schroot -b -c sid-snap↵
       sid-snap-46195b04-0893-49bf-beb8-0d4ccc899f0f

       L'identifiant de session de la session nouvellement créée est renvoyé sur  la  sortie  standard.  Il  est
       habituel de le conserver comme ceci :

       % SESSION=$(schroot -b -c sid-snap)↵
       % echo $SESSION↵
       sid-snap-46195b04-0893-49bf-beb8-0d4ccc899f0f

       La session peut être utilisée comme n'importe quel chroot. Voici à quoi ressemble la session :

       % schroot -i -c sid-snap-46195b04-0893-49bf-beb8-0d4ccc899f0f↵
         ——— Session ———
         Name                   sid-snap-46195b04-0893-49bf-beb8-0d\
       4ccc899f0f
         Description            Debian sid snapshot
         Type                   lvm-snapshot
         Priority               3
         Users                  maks rleigh
         Groups                 sbuild
         Root Users
         Root Groups            root sbuild
         Aliases
         Environment Filter     ^(BASH_ENV|CDPATH|ENV|HOSTALIASES|I\
       FS|KRB5_CONFIG|KRBCONFDIR|KRBTKFILE|KRB_CONF|LD_.*|LOCALDOMA\
       IN|NLSPATH|PATH_LOCALE|RES_OPTIONS|TERMINFO|TERMINFO_DIRS|TE\
       RMPATH)$
         Run Setup Scripts      true
         Script Configuration   script-defaults
         Session Managed        true
         Personality            linux
         Mount Location         /var/lib/schroot/mount/sid-snap-461\
       95b04-0893-49bf-beb8-0d4ccc899f0f
         Path                   /var/lib/schroot/mount/sid-snap-461\
       95b04-0893-49bf-beb8-0d4ccc899f0f
         Mount Device           /dev/hda_vg/sid-snap-46195b04-0893-\
       49bf-beb8-0d4ccc899f0f
         Device                 /dev/hda_vg/sid_chroot
         Mount Options          -o atime,async,user_xattr
         Source Users
         Source Groups          root rleigh
         Source Root Users
         Source Root Groups     root rleigh
         LVM Snapshot Device    /dev/hda_vg/sid-snap-46195b04-0893-\
       49bf-beb8-0d4ccc899f0f
         LVM Snapshot Options   --size 2G -c 128

       Maintenant que la session a été créée, il est possible d'exécuter des commandes comme ceci :

       % schroot -r -c sid-snap-46195b04-0893-49bf-beb8-0d4ccc899f0f -- \
         uname -sr↵
       I: [sid-snap-46195b04-0893-49bf-beb8-0d4ccc899f0f chroot] Running \
       command: “uname -sr”
       Linux 2.6.18-3-powerpc
       % schroot -r -c $SESSION -- uname -sr↵
       I: [sid-snap-fe170af9-d9be-4800-b1bd-de275858b938 chroot] Running \
       command: “uname -sr”
       Linux 2.6.18-3-powerpc

       Quand toutes les commandes à exécuter dans la session ont été effectuées, la session peut être terminée :

       % schroot -e -c sid-snap-46195b04-0893-49bf-beb8-0d4ccc899f0f↵
       % schroot -e -c $SESSION↵

       Finalement, les noms de session peuvent être longs et peu maniables. Un nom peut être spécifié à la place
       de l'identifiant de session généré automatiquement :

       % schroot -b -c sid-snap -n mon-nom-session↵
       mon-nom-session

DÉPANNAGES

       Si quelque chose ne fonctionne pas, et qu'il n'est pas facile de déterminer ce qui ne va pas à partir des
       messages  d'erreur,  vous  pouvez utiliser l'option --debug=niveau pour activer les messages de débogage.
       Cela donnera un plus grand nombre d'informations. Les niveaux de débogage valables sont ‘none’, ‘notice’,
       ‘info’, ‘warning’ et ‘critical’ par ordre croissant de sévérité. Plus le niveau de sévérité  est  faible,
       plus il y a de sortie.

       Si  vous  avez  toujours des problèmes, les développeurs peuvent être contactés sur la liste de diffusion
       (en anglais) :
       Debian buildd-tools Developers
       <buildd-tools-devel@lists.alioth.debian.org>

BOGUES

       Sur les architectures mips et mipsel, les noyaux Linux, jusqu'à la version 2.6.17 incluse, ont une  prise
       en  charge  cassée  des  personality(2),  qui  a  pour  conséquence  un  échec  de  la  mise en place des
       personnalités. Cela se manifeste par une erreur “Operation not permitted”  (EPERM).  Pour  contourner  ce
       problème,  définissez  personality  à  ‘undefined’  ou  mettez à niveau votre noyau vers une version plus
       récente.

       The default execution of a login shell is silently changed  to  a  regular  shell  if  at  least  one  of
       --preserve-environment or command-prefix is used.

ENVIRONNEMENT

       Par défaut, l'environnement n'est pas préservé et les variables d'environnement suivantes sont définies :
       HOME,  LOGNAME,  PATH,  SHELL,  TERM (préservée si déjà spécifiée) et USER. Les variables d'environnement
       SCHROOT_COMMAND, SCHROOT_USER, SCHROOT_GROUP, SCHROOT_UID et SCHROOT_GID sont définies à  l'intérieur  du
       chroot  spécifiant  respectivement  la  commande  exécutée,  le  nom  d'utilisateur,  le  nom  de groupe,
       l'identifiant de l'utilisateur et  l'identifiant  du  groupe.  En  plus,  les  variables  d'environnement
       SCHROOT_SESSION_ID, SCHROOT_CHROOT_NAME et SCHROOT_ALIAS_NAME définissent respectivement l'identifiant de
       session, le nom de chroot d'origine avant la création de la session et l'alias utilisé pour identifier le
       chroot d'origine sélectionné.

       Les  variables  d'environnement, potentiellement dangereuses, suivantes sont retirées par défaut pour des
       raisons de sécurité : BASH_ENV,  CDPATH,  ENV,  HOSTALIASES,  IFS,  KRB5_CONFIG,  KRBCONFDIR,  KRBTKFILE,
       KRB_CONF, LD_.*, LOCALDOMAIN, NLSPATH, PATH_LOCALE, RES_OPTIONS, TERMINFO, TERMINFO_DIRS, et TERMPATH. Si
       nécessaire,  la  clé  de  configuration  environment-filter  permettra  de modifier la liste d'exclusion.
       Consultez schroot.conf(5) pour plus de détails.

FICHIERS

   Fichiers de configuration
       /etc/schroot/schroot.conf
              Le fichier de configuration des chroots pour l'ensemble du système. Ce fichier doit  être  possédé
              par l'utilisateur root et être non inscriptible par les autres.

       /etc/schroot/chroot.d
              Des définitions de chroot supplémentaires peuvent être placées dans des fichiers de ce répertoire.
              Elles  sont  traitées de la même façon que /etc/schroot/schroot.conf. Chaque fichier peut contenir
              une ou plusieurs définitions de chroot. Notez que les fichiers de ce répertoire suivent les  mêmes
              règles de dénomination que run-parts(8) lorsqu'ils sont exécutés avec l'option --lsbsysinit.

       /etc/schroot/setup.d
              Le  répertoire  de  scripts  de  mise  en  place  de  chroot pour l'ensemble du système. Consultez
              schroot-setup(5).

       /etc/pam.d/schroot
              Configuration de PAM.

   Répertoires systèmes
       /usr/lib/x86_64-linux-gnu/schroot
              Répertoire contenant les programmes d'assistance utilisés par les scripts de mise en place.

   Répertoires de sessions
       Chaque répertoire contient un répertoire ou un fichier avec le nom de chaque session. Tous les  types  de
       chroot n'utilisent pas tous les répertoires ci-dessous.

       /var/lib/schroot/session
              Répertoire contenant la configuration de session pour chaque session active.

       /var/run/schroot/mount
              Répertoire utilisé pour monter le système de fichiers utilisé pour chaque session active.

       /var/lib/schroot/union/underlay
              Répertoire utilisé comme source d'union de systèmes de fichiers (sous-couche).

       /var/lib/schroot/union/overlay
              Répertoire utilisé comme sur-couche inscriptible pour l'union de systèmes de fichiers.

       /var/lib/schroot/unpack
              Répertoire utilisé pour le dépaquetage de chroots de fichiers.

AUTEURS

       Roger Leigh.

COPYRIGHT

       Copyright © 2005-2012 Roger Leigh <rleigh@codelibre.net>

       schroot  est  un  logiciel  libre : vous pouvez le redistribuer et/ou le modifier aux conditions définies
       dans la licence publique générale GNU telle que publiée par la Free Software Foundation,  version  2  ou,
       selon votre préférence, toute version ultérieure.

VOIR AUSSI

       dchroot(1), sbuild(1), chroot(2), schroot.conf(5), schroot-setup(5), schroot-faq(7), run-parts(8).

TRADUCTION

       Ce document est une traduction, réalisée par Thomas Blein le 30 mai 2012.

       L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.

       La  version  anglaise de ce document est toujours consultable en ajoutant l'option « -L C » à la commande
       man.

       N'hésitez pas à signaler à l'auteur ou à la liste  de  traduction  <debian-l10n-french@lists.debian.org>,
       selon le cas, toute erreur dans cette page de manuel.

Aug                                                    14                                             SCHROOT(1)