Maniatux's Blog

Welcome to the internet

ArchBSD dans une jail FreeBSD 10

Rédigé par Xavier - - 4 commentaires

ArchBSD peut être installé dans une jail sur un hôte FreeBSD très facilement car très proche. En effet, là où Debian GNU/kFreeBSD est une Debian utilisant un noyau FreeBSD, ArchBSD peut se résumer à l'équation suivante : ArchBSD = FreeBSD + pacman. En effet sur ArchBSD on retrouve un rc.conf (avec des daemon_enable="YES") et le fonctionnement ne nécessite pas de couche de compatibilité Linux.

Création de la jail

Malheureusement ArchBSD ne propose pas d'image tout prête qu'il suffirait de décompresser. Il va falloir utiliser pacman et bidouiller un peu pour le faire fonctionner.

# pkg install pacman

Ensuite créez un fichier pacman.conf (dans le répertoire courant) avec le contenu suivant :

[options]
SigLevel = Never
[core]
Server = ftp://ftp.archbsd.net/core/os/x86_64

Note : x86_64 est à remplacer par i686 si votre système est 32 bits.

Créez le répertoire de la jail ainsi que deux répertoires nécessaires à pacman :

# mkdir /usr/jails/archbsd
# mkdir -p /usr/jails/archbsd/var/lib/pacman
# mkdir -p /usr/jails/archbsd/var/cache/pacman/pkg

Procédez maintenant à l'installation :

pacman -Sy base \
-r /usr/jails/archbsd \
--cachedir /usr/jails/archbsd/var/cache/pacman \
--arch x86_64 \
--config pacman.conf

Configuration de la jail

Editez votre /etc/jail.conf pour y ajouter votre jail archbsd. Exemple :

# DEFAULT PARAMETERS
#
exec.start      = "/bin/sh /etc/rc";
exec.stop = "/bin/sh /etc/rc.shutdown";
exec.clean;
mount.devfs;
path = "/usr/jails/$name";
host.hostname = "$name";

# INDIVIDUAL JAIL PARAMETERS
#
archbsd {
        ip4.addr = re0|192.168.0.13;
        persist;
}

Ensuite démarrez la jail :

# service jail start

Configurer ArchBSD

Entrez dans la jail ArchBSD :

# jexec archbsd bash

Premièrement, nous avons un souci avec pacman. En effet la détection de l'architecture ne fonctionne pas bien (FreeBSD utilise amd64 pour les systèmes 64 bits, alors que sur les dépôts de ArchBSD c'est x86_64), il faut donc la forcer. Editez le fichier /etc/pacman.conf et modifiez comme suivant :

Architecture = x86_64

Note : Bien entendu si vous êtes sur du 32 bits, c'est i686 qu'il faut saisir.

Ensuite il faut initialiser le keyring de pacman, avec les commandes suivantes :

# pacman-key --init
# pacman-key --populate archbsd

Et voilà, ArchBSD est prêt !

4 commentaires

#1 kuniyoshi a dit :

J'ai peut-être une question idiote... Mais pourquoi ne pas porter "pacman" sur FreeBSD plutôt ?!

#2 Xavier a dit :

@kuniyoshi :
pacman est disponible sur FreeBSD mais je n'ai jamais tenté de l'utiliser pour installer des paquets.
ArchBSD justement c'est FreeBSD + pacman donc il y a peut être une réponse à ta question.

#3 kuniyoshi a dit :

Merci ! :-)
Tiens Xavier pour info :
http://boutique.ed-diamond.com/gnulinux-magazine-hors-series/721-gnulinux-magazine-hs-73.html
Pour ma part, Je compte bien l'acquérir. Il y a une partie portant sur bhyve.
@+

#4 Xavier a dit :

@kuniyoshi :
Moi et la presse... surtout les magasines Linux qui ont toujours été hors de prix :/
Mais pourquoi pas.

Les commentaires sont fermés.