Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
jails:zfs [2023/05/20 16:00] – [Montages] david | jails:zfs [2024/05/01 14:22] (Version actuelle) – david | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | |||
< | < | ||
====== Créer et administrer vos jails par ZFS ====== | ====== Créer et administrer vos jails par ZFS ====== | ||
Ligne 27: | Ligne 26: | ||
ip4 = inherit;# IP address of the jail | ip4 = inherit;# IP address of the jail | ||
ip6 = inherit;# IP address of the jail | ip6 = inherit;# IP address of the jail | ||
- | path = "/ | + | path = "/ |
} | } | ||
</ | </ | ||
Ligne 63: | Ligne 62: | ||
<code bash> | <code bash> | ||
zfs create -o mountpoint=/ | zfs create -o mountpoint=/ | ||
- | zfs create zroot/ | + | zfs create zroot/ |
</ | </ | ||
Ligne 79: | Ligne 78: | ||
<code bash> | <code bash> | ||
cd /jails | cd /jails | ||
- | fetch http:// | + | fetch http:// |
- | tar -C 13.2-RELEASE -xf base.txz | + | tar -C 13.3-RELEASE -xf base.txz |
- | cp / | + | cp / |
- | cp / | + | cp / |
- | touch 13.2-RELEASE/ | + | touch 13.3-RELEASE/ |
</ | </ | ||
Ligne 90: | Ligne 89: | ||
Et réglez votre rc.conf(5) ainsi: | Et réglez votre rc.conf(5) ainsi: | ||
- | <file ini 13.2-RELEASE/ | + | <file ini 13.3-RELEASE/ |
cron_flags=" | cron_flags=" | ||
Ligne 103: | Ligne 102: | ||
</ | </ | ||
- | Plus quelques réglages dédiées: | + | L’entrée pour cron(8) sert à décaler son activation par rapport à l' |
- | <file ini 13.2-RELEASE/ | + | |
+ | <file ini 13.3-RELEASE/ | ||
+ | cron_enable=" | ||
+ | </ | ||
+ | |||
+ | |||
+ | Enfin, donnez lui un nom: | ||
+ | <file ini 13.3-RELEASE/ | ||
hostname=nepasutiliser | hostname=nepasutiliser | ||
</ | </ | ||
Ligne 111: | Ligne 117: | ||
Si votre //jail// doit pouvoir envoyer des mails, le plus rapide est d' | Si votre //jail// doit pouvoir envoyer des mails, le plus rapide est d' | ||
<file ini rc.conf> | <file ini rc.conf> | ||
+ | sendmail_enable=" | ||
sendmail_submit_enable=" | sendmail_submit_enable=" | ||
</ | </ | ||
Ligne 119: | Ligne 126: | ||
</ | </ | ||
- | <callout type=" | + | Si vous désactivez complètement // |
- | Attention, si vous avez autorisé cron(8), assurez vous de désactiver | + | <file ini rc.conf> |
- | Sinon, vous allez remplir la base mail de '' | + | sendmail_enable=" |
- | </callout> | + | sendmail_submit_enable=" |
+ | </file> | ||
+ | Attention, si vous avez autorisé cron(8), periodic(8) sera actif et vous allez remplir la base mail de '' | ||
+ | Assurez vous soit de désactiver les scripts periodic(8) dans ''/ | ||
+ | |||
+ | <file ini periodic.conf> | ||
+ | daily_output=/ | ||
+ | weekly_output=/ | ||
+ | monthly_output=/ | ||
+ | daily_show_success=NO | ||
+ | daily_show_info=NO | ||
+ | </ | ||
+ | |||
+ | ou ajoutez une adresse mail générique pour cron dans ''/ | ||
+ | <file ini periodic.conf> | ||
+ | cron_flags=" | ||
+ | </ | ||
==== Démarrer ==== | ==== Démarrer ==== | ||
Vous pouvez démarrer: | Vous pouvez démarrer: | ||
Ligne 140: | Ligne 163: | ||
<code bash> | <code bash> | ||
- | zfs snap zroot/ | + | zfs snap zroot/ |
</ | </ | ||
Ligne 147: | Ligne 170: | ||
<code bash> | <code bash> | ||
- | zfs clone zroot/ | + | zfs clone zroot/ |
</ | </ | ||
Ligne 214: | Ligne 237: | ||
Par exemple, pour pf(4): | Par exemple, pour pf(4): | ||
- | < | + | < |
jailnet=" | jailnet=" | ||
- | |||
# ... | # ... | ||
- | |||
nat on $ext_if from $jailnet to any -> ($ext_if) | nat on $ext_if from $jailnet to any -> ($ext_if) | ||
</ | </ | ||
- | |||
- | Pensez à vérifier les valeurs de resolv.conf(5). Si vous avez suivi la procédure, ce devrait être une copie de celle de l' | ||
<note important> | <note important> | ||
- | Attention avant d' | + | Attention avant d' |
</ | </ | ||
+ | ===== DNS ===== | ||
+ | |||
+ | Pensez à vérifier les valeurs de resolv.conf(5). Si vous avez suivi la procédure, ce devrait être une copie de celle de l' | ||
+ | Pour donner accès à ce service à vos /jails/, assurez que ce dernier écoute sur des adresses autres que '' | ||
+ | Par exemple, associez une adresse dédiée à '' | ||
+ | |||
+ | <file perl rc.conf> | ||
+ | cloned_interfaces=" | ||
+ | ifconfig_lo1=" | ||
+ | ifconfig_lo1_ipv6=" | ||
+ | </ | ||
+ | |||
+ | voire ajouter d' | ||
+ | <file perl rc.conf> | ||
+ | ifconfig_lo1_alias0=" | ||
+ | ifconfig_lo1_ipv6_alias0=" | ||
+ | </ | ||
+ | |||
+ | ou, à la volée: | ||
+ | <code bash> | ||
+ | ifconfig lo1 inet 192.168.0.1 netmask 255.255.255.0 alias | ||
+ | ifconfig lo1 inet6 fd00::1 prefixlen 64 alias | ||
+ | </ | ||
+ | |||
+ | Ensuite configurez unbound(8) pour écouter sur cette addresse: | ||
+ | <file yaml unbound.conf> | ||
+ | interface: 192.168.0.1 | ||
+ | interface: fd00::1 | ||
+ | access-control: | ||
+ | access-control: | ||
+ | </ | ||
+ | |||
+ | ou pour tout l' | ||
+ | <file yaml unbound.conf> | ||
+ | interface: lo1 | ||
+ | </ | ||
+ | |||
+ | configurez alors les '' | ||
===== Services IP ===== | ===== Services IP ===== | ||
Ligne 310: | Ligne 367: | ||
<code bash> | <code bash> | ||
- | root@popeye:# | + | freebsd-update -f / |
</ | </ | ||
Notez que vous pouvez automatiser le processus en demandant directement à la //jail// quelle version elle fait tourner: | Notez que vous pouvez automatiser le processus en demandant directement à la //jail// quelle version elle fait tourner: | ||
<code bash> | <code bash> | ||
- | root@popeye:# | + | jexec jailname freebsd-version -u |
- | 13.2-RELEASE | + | 13.3-RELEASE |
</ | </ | ||
Utilisez automatiquement cette valeur dans un script par: | Utilisez automatiquement cette valeur dans un script par: | ||
<code bash> | <code bash> | ||
- | root@popeye:# | + | freebsd-update -f / |
</ | </ | ||
En cas de mise à niveau, vers une version majeure plus récente, procédure est un peu plus longue. | En cas de mise à niveau, vers une version majeure plus récente, procédure est un peu plus longue. | ||
<code bash> | <code bash> | ||
- | root@popeye:# | + | jail -r jailname |
- | root@popeye:# | + | freebsd-update -f / |
- | root@popeye:# | + | freebsd-update -f / |
- | root@popeye:# | + | jail -c jailname |
- | root@popeye:# | + | freebsd-update -f / |
- | root@popeye:# | + | pkg -j jailname bootstrap -f |
- | root@popeye:# | + | pkg -j jailname |
- | root@popeye:# | + | jail -rc jailname |
</ | </ | ||
+ | ===== Ports ====== | ||
+ | Utilisez des [[ports: | ||
+ | Par exemple, supprimer tout ce qui ressemble à une documentation, | ||
+ | <file make / | ||
+ | OPTIONS_UNSET=DOC DOCS NLS X11 EXAMPLES EXAMPLE XCB WAYLAND DEBUG TEST TESTS OPENGL DTRACE INFO BE_STANDARD | ||
+ | OPTIONS_UNSET+=CUPS MANPAGES | ||
+ | DEFAULT_VERSIONS+= imagemagick=6-nox11 | ||
+ | # | ||
+ | </ | ||
===== En savoir plus ===== | ===== En savoir plus ===== |