Wed Nov 8 16:02:55 2017 UTC

Construction de la CHROOT (pass 1)

Dans cette première passe nous allons construire un environnement chroot qui sera utilisé pour construire NuTyX dans la passe 2. Si vous avez choisi d'utiliser une partition, pensez à la monter avant d'aller plus loin.

On va commençer par créér les dossiers, les liens et le compte adéquat pour la construction de la première passe.

La première partie des préparatifs se fait en compte root et la deuxième partie en compte LFS. Le temps de contruction de la première passe varie entre 1 heure (avec un 8 cores) et une nuit (un mono core ).

C'est un condensé des choses à faire avant de pouvoir lancer les différents scripts qui feront tout le travail automatiquement.

Notez que dans cet article, on utilise uniquement un dossier et non une partition. Il est tout à fait possible de construire la CHROOT dans un dossier.

Partie Administrateur:

  1. Création de la variable de configuration LFS:
  2. export LFS=/mnt/lfs
  3. Création des dossiers:
  4.  mkdir -vp $LFS/{sources,tools}
  5. Ajout des liens necessaires:
  6. ln -svf $LFS/tools /
    ln -svf $LFS/sources /
  7. Création de l'utilisateur lfs:
  8. groupadd lfs
    useradd -s /bin/bash -g lfs -m -k /dev/null lfs
    passwd lfs
    Vous entrez le mot de passe de votre choix, ce n'est pas indispensable si vous entrez dans le compte lfs depuis root.
  9. Changement de propriètaire et de mode des dossiers:
  10. chown -v lfs $LFS/{tools,sources}
    chmod -v a+wt $LFS/sources
    chown -v lfs $LFS
  11. Ajuster l'environnement de travail: le fichier /home/lfs/.bash_profile:
  12. cat > /home/lfs/.bash_profile << "EOF"
    exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
    EOF
    et le fichier /home/lfs/.bashrc:
    echo "set +h
    umask 022
    LFS=$LFS
    LC_ALL=POSIX
    LFS_TARGET=$(uname -m)-lfs-linux-gnu
    PATH=/home/lfs/bin:/tools/bin:/bin:/usr/bin
    export LFS LC_ALL LFS_TARGET PATH" > /home/lfs/.bashrc
Il est temps de passer à la 2ème partie et donc de se connecter en utilisateur lfs:
su - lfs

Partie LFS:

A partir de maintenant vous tapez toutes les commandes en compte lfs

On récupère la dernière version des sources sous git:

git clone git://github.com/NuTyX/base-sysV.git development

Une fois terminé, un nouveau dossier a été créé: development On y entre et on lance le premier script:

cd development
scripts/runmebeforepass1

Le script va effectuer toute une série de vérifications et si aucune erreur ne s'est produite, le téléchargement des sources commence automatiquement. Une fois le téléchargement terminé, il suffit de suivre les instructions.

Si tout s'est bien passé, vous devriez avoir le message:

====> Successfull configured

Si vous lisez ce message, vous êtes prêt pour lancer la première passe pour la construction de votre future NuTyX,faites:

cd chroot
pass

Admirez le travail ...

+ mkdir -pv /mnt/lfs/var/lib/pkg
mkdir: created directory '/mnt/lfs/var'
mkdir: created directory '/mnt/lfs/var/lib'
mkdir: created directory '/mnt/lfs/var/lib/pkg'
mkdir: created directory '/mnt/lfs/var/lib/pkg/DB'
=======> Building '/home/lfs/development/chroot/cards/Pkgfile' succeeded.
/home/lfs/development/chroot

Notez que vous pouvez suivre l'évolution et contrôler la bonne conduite de chaque paquet construit en consultant le dossier /home/lfs/logs/chroot/ . En effet à chaque paquet construit correspond un log.