Certains administrateurs divisent les environnements jail en deux catégories: les environnements jails “complets”, qui ressemblent à un véritable système FreeBSD, et les environnements jails de “service”, qui sont dédiés à une application ou un seul service, et tournant éventuellement avec des privilèges. Cette séparation est juste conceptuelle et n'affecte pas la création de l'environnement jail. La page de manuel jail(8) est très claire quant à la procédure de création d'un environnement jail:
# setenv D /here/is/the/jail # mkdir -p $D # cd /usr/src # make world DESTDIR=$D # cd etc/ [1] # make distribution DESTDIR=$D # mount_devfs devfs $D/dev
Une fois l'environnement jail installé, il peut être lancé en employant l'utilitaire
jail(8). Cet outil
requiert obligatoirement quatre arguments qui sont décrits dans la Section 15.3.1. D'autres arguments peuvent
également être utilisés, pour par exemple exécuter le processus avec les droits d'un
utilisateur particulier. L'argument command
dépend du type d'environnement; pour un
système virtuel, /etc/rc est un bon choix puisque la séquence de démarrage d'un
véritable système FreeBSD sera dupliquée. Pour un environnement jail de type service, cela dépendra du service ou de
l'application qui sera exécuté dans l'environnement jail.
Les environnements jails sont souvent lancés au démarrage de la machine et le système rc de FreeBSD propose une méthode simple pour cela.
Une liste des environnements jail autorisés à être lancés au démarrage du système devrait être ajoutée au fichier rc.conf(5):
jail_enable="YES" # Utiliser NO pour désactiver le lancement des environnements jail jail_list="www" # Liste des noms des environnements jail séparés par une espace
Pour chaque environnement listé dans jail_list
, un
ensemble de paramètres rc.conf(5), qui
décrivent l'environnement jail, devrait être ajouté:
jail_www_rootdir="/usr/jail/www" # le répertoire racine de l'environnement jail jail_www_hostname="www.example.org" # le nom de machine de l'environnement jail jail_www_ip="192.168.0.10" # son adresse IP jail_www_devfs_enable="YES" # monter devfs dans l'environnement jail jail_www_devfs_ruleset="www_ruleset" # les règles devfs à appliquer à l'environnement jail
Le démarrage par défaut des environnements jails, configuré dans rc.conf(5),
exécutera la procédure /etc/rc de l'environnement jail,
ce qui suppose que l'environnement est un système virtuel complet. Pour les
environnements jail de service, la commande de démarrage par défaut de
l'environnement devrait être modifiée en configurant correctement l'option
jail_jailname_exec_start
.
Note : Pour une liste complète des options disponibles, veuillez consulter la page de manuel rc.conf(5).
La procedure /etc/rc.d/jail peut être utilisée pour démarrer ou arrêter un environnement jail à la main si une entrée pour l'environnement existe dans le fichier rc.conf:
# /etc/rc.d/jail start www # /etc/rc.d/jail stop www
Il n'existe pas pour le moment de méthode propre pour arrêter un environnement jail(8). C'est dû au fait que les commandes normalement employées pour arrêter proprement un système ne peuvent être utilisées à l'intérieur d'un environnement jail. La meilleur façon d'arrêter un environnement jail est de lancer la commande suivante à l'intérieur de l'environnement ou en utilisant le programme jexec(8) depuis l'extérieur de l'environnement:
# sh /etc/rc.shutdown
Plus d'information à ce sujet peut être trouvé dans la page de manuel de jail(8).
[1] |
Cette étape n'est pas requise sous FreeBSD 6.0 et versions ultérieures. |
Précédent | Sommaire | Suivant |
Introduction | Niveau supérieur | Optimisation et administration |
Ce document, ainsi que d'autres peut être téléchargé sur ftp.FreeBSD.org/pub/FreeBSD/doc/.
Pour toutes questions à propos de FreeBSD, lisez la documentation avant de contacter <questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez <doc@FreeBSD.org>.