SCHROOT-SETUP(5)

NOM
schroot-setup — scripts de mise en place des chroots schroot

DESCRIPTION
schroot utilise des scripts pour mettre en place et ensuite nettoyer les environnements de chroot. Le répertoire /etc/schroot/setup.d contient des scripts qui sont exécutés lorsque un chroot est créé ou détruit. Plusieurs variables d'environnements sont définies quand les scripts sont exécutés, ce qui permet de personnaliser leur comportement, par exemple en fonction du type de chroot utilisé.

L'exécution des scripts se fait suivant l'ordre lexical des noms, comme pour ceux exécutés par init(8), en utilisant le même style d'exécution que run-parts(8).

Les scripts de mise en place sont tous invoqués avec deux options :

1   L'action à effectuer.

    Quand une session est lancée, le chroot est mis en place en exécutant les scripts dans /etc/schroot/setup.d avec l'option ‘setup-start’. Quand la session est terminée, les scripts dans /etc/schroot/setup.d sont exécutés dans l'ordre inverse avec l'option ‘setup-stop’.

2   Le statut du chroot.

    C'est soit ‘ok’ s'il n'y a aucun problème, soit ‘fail’ si quelque chose s'est mal passé. Par exemple, certaines actions pourraient être ignorées en cas d'échec.

Notez que les scripts devraient être idempotent. Ils doivent être idempotentsd pendant la phase ‘setup-stop’, car ils pourraient être exécutés plus d'une fois, par exemple en cas d'échec.

ENVIRONNEMENT

  Variables générales

AUTH_USER
    Le nom d'utilisateur sous lequel la commande sera exécutée dans le chroot.

CHROOT_NAME
    Le nom du chroot. Notez que c'est le nom du chroot d'origine avant la création de session ; vous voulez probablement SESSION_ID.

LIBEXEC_DIR
    Le répertoire dans lequel les programmes d'assistance sont situés.

MOUNT_DIR
    Le répertoire dans lequel les chroots non système de fichiers sont montés (par exemple périphériques de blocs et instantanés LVM).

PID L'identifiant de processus du processus schroot.

PLATFORM
    Le système d'exploitation de la plate-forme sur laquelle schroot est exécuté. Il peut être utilisé pour introduire des comportements dépendant de la plate-forme dans les scripts de mise en place quand cela est nécessaire. Notez que les variables HOST sont probablement ce qui est requis. Dans le contexte de schroot, la plate-forme est la configuration prise en charge et le comportement pour une architecture donnée, et peut être identique parmi plusieurs architectures.

SESSION_ID
    Identifiant de session.

VERBOSE
    Définir à ‘quiet’ si seuls les messages d'erreur doivent être affichés, ‘normal’ pour afficher plus de messages et ‘verbose’ si tous les messages doivent être affichés. Précédemment appelée AUTH_VERBOSITY.

CHROOT_SESSION_CREATE
    Définir à ‘true’ si une session sera créée, sinon ‘false’.

CHROOT_SESSION_CLONE
    Définir à ‘true’ si une session sera clonée, sinon ‘false’.

CHROOT_SESSION_PURGE
    Définir à ‘true’ si une session sera purgée, sinon ‘false’.

CHROOT_SESSION_SOURCE
    Définir à ‘true’ si une session sera créée à partir d'un chroot source, sinon ‘false’.

CHROOT_TYPE
    Le type de chroot. C'est utile pour restreindre une tâche de mise en place à des types de chroot particuliers (par exemple seulement les périphériques de blocs ou les instantanés LVM).

CHROOT_NAME
    Le nom du chroot. C'est utile pour restreindre une tâche de mise en place à un chroot particulier ou un ensemble de chroots.

CHROOT_ALIAS
    Le nom de l'alias utilisé pour sélectionner le chroot. C'est utile pour spécialiser une tâche de mise en place en fonction d'un de ses noms d'alias ou du nom par défaut du chroot. Par exemple, il peut être utilisé pour spécifier des sources additionnelles dans /etc/apt/sources.list, comme un alias « stable-security » pour un chroot « stable », ou un alias « experimental » pour un chroot « unstable ».

CHROOT_DESCRIPTION
    Description du chroot.

CHROOT_MOUNT_LOCATION
    Le lieu de montage du chroot. Il est utilisé pour la création et le montage des points de montage.

CHROOT_LOCATION
    La localisation du chroot à l'intérieur du point de montage. Cela permet d'autoriser plusieurs chroots sur un système de fichiers unique. Définie pour l'ensemble des types de chroot.

CHROOT_PATH
    Le chemin absolu du chroot. C'est typiquement CHROOT_MOUNT_LOCATION et CHROOT_LOCATION concaténés ensemble. C'est le chemin qui doit être utilisé pour accéder aux chroots.

  Variables pour les chroots « plain » et « directory »
Ces types de chroot utilisent uniquement les variables générales.

  Variables pour les chroots fichier (« file »)

CHROOT_FILE
    Le fichier contenant les fichiers du chroot.

CHROOT_FILE_REPACK
    Définir à ‘true’ pour recompacter le chroot dans une archive à la fin de la session, sinon ‘false’.

  Variables pour les chroots montables

Ces variables sont seulement définies pour les types de chroot montables directement.

CHROOT_MOUNT_DEVICE
    Le périphérique à monter contenant le chroot.

CHROOT_MOUNT_OPTIONS
    Les options à passer à mount(8).

CHROOT_LOCATION
    La localisation du chroot à l'intérieur du point de montage. Permet d'autoriser l'existence de plusieurs chroots sur un système de fichiers unique.

  Variables pour les chroots d'union de systèmes de fichiers

CHROOT_UNION_TYPE
    Type d'union de systèmes de fichiers.

CHROOT_UNION_MOUNT_OPTIONS
    Options de montage des unions de systèmes de fichiers.

CHROOT_UNION_OVERLAY_DIRECTORY
    Répertoire pour la sur-couche (« overlay ») de l'union de systèmes de fichiers (inscriptible).

CHROOT_UNION_UNDERLAY_DIRECTORY
    Répertoire pour la sous-couche (« underlay ») de l'union de systèmes de fichiers (lecture-seule).

  Variables des périphériques de type bloc

CHROOT_DEVICE
    Le périphérique contenant le système de fichiers root du chroot. C'est normalement, mais non nécessairement, le périphérique qui sera monté. Par exemple, pour un instantané LVM, ce sera le volume logique initial.

  Variables d'instantané LVM

CHROOT_LVM_SNAPSHOT_NAME
    Nom de l'instantané à passer à lvcreate(8).

CHROOT_LVM_SNAPSHOT_DEVICE
    Le nom du périphérique de l'instantané LVM.

CHROOT_LVM_SNAPSHOT_OPTIONS
    Les options à passer à lvcreate(8).

  Variables personnalisées

Les clés personnalisées définies dans schroot.conf seront mises en capitales et définies dans l'environnement comme décrit dans schroot.conf(5).

FICHIERS

  Configuration des scripts de mise en place
Le répertoire /etc/schroot/default contient les configurations par défaut utilisées par les scripts de mise en place.

config
    Fichier de configuration principal lu par les scripts de mise en place. Le format de ce fichier est décrit dans schroot-script-config(5). C'est la valeur par défaut pour la clé script-config. Notez que précédemment il était nommé /etc/schroot/script-defaults. Les fichiers suivants sont référencés par défaut :

copyfiles
    Une liste des fichiers à copier dans le chroot à partir du système hôte. Notez que précédemment elle était nommée /etc/schroot/copyfiles-defaults.

fstab
    Un fichier au format décrit dans fstab(5), utilisé pour monter les systèmes de fichiers dans le chroot. Le point de montage est relatif à la racine du chroot. Notez que précédemment il était nommé /etc/schroot/mount-defaults.

nssdatabases
    Bases de données système (comme décrit dans /etc/nsswitch.conf sur les systèmes GNU/Linux) à copier dans le chroot depuis l'hôte. Notez que précédemment cela était nommé /etc/schroot/nssdatabases-defaults.

  Scripts de mise en place
Le répertoire /etc/schroot/setup.d contient les scripts de mise en place des chroots.

00check
    Afficher les diagnostics de débogage et exécuter des vérifications d'intégrité.

05file
    Décompresser, nettoyer et recompresser les chroots basés sur les fichiers.

05fsunion
    Créer et enlever les unions de systèmes de fichiers.

05lvm
    Créer et enlever les instantanés LVM.

10mount
    Monter et démonter les systèmes de fichiers.

15binfmt
    Mettre en place l'émulateur QEMU en utilisant binfmt-support. Cela permet d'utiliser de manière transparente un chroot pour une architecture CPU différente, fournissant une alternative à la compilation croisée ou à l'émulation d'une machine complète.

15killprocs
    Tuer les processus qui continuent à s'exécuter dans le chroot quand une session se termine et qui pourraient empêcher le démontage des systèmes de fichiers et le nettoyage des autres ressources.

20copyfiles
    Copier les fichiers depuis le système hôte dans le chroot. Par exemple, configurer le réseau en copiant hosts et resolv.conf.

20nssdatabases
    Configurer les bases de données du système en copiant passwd, shadow, group, etc., dans le chroot.

50chrootname
    Définir le nom de chroot (/etc/debian_chroot) dans le chroot. Il peut être utilisé par une invite de commande pour afficher le chroot courant.

AUTEURS
Roger Leigh.

COPYRIGHT
Copyright © 2005-2012 Roger Leigh <rleigh@debian.org>

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
schroot(1), fstab(5), schroot.conf(5), schroot-script-config(5), run-parts(8).