Swisslinux.org

− Le carrefour GNU/Linux en Suisse −

 

Langue

 
Sujet : Faire son stage4 gentoo en quelques étapes.
Niveau : intermédiaire/avancé
Auteur : Phoenix818

Propos

Gentoo propose par défaut une installation depuis un stage 3, autrement dit avec les principaux outils compilés, ne restant plus qu'à installer le reste du système après un peu de configuration.

En créant un stage 4, cela permet d'installer gentoo sur plusieurs ordinateurs, en ayant déjà la plupart des programmes nécessaires, ou encore de préparer un système pour un laptop pourri avec un minable celeron 500MHz 8-)

Prérequis

  • avoir un système linux (gentoo serait le mieux) déjà installé quelque part, et pouvoir employer la commande chroot
  • cette machine doit avoir une connexion internet

Méthodologie

Terminologie

  • hôte : la machine de base sur laquelle on va compiler le stage4 et le configurer
  • cible : la machine devant recevoir le stage4 configuré
  • une ligne de commande débutant par $ est considérée comme exécutée par votre user
  • une ligne de commande débutant par # est considérée comme exécutée par root

En gros

Nous allons commencer par prendre un stage 3, et faire la configuration presque standard de ce stage 3. Les principales différences entre la doc gentoo “installation standard” et “créer son stage 4” est l'absence de partitionnement, et le fait qu'on ne travaillera que dans un chroot, avant de faire un rsync au dernier moment sur cible depuis hôte.

Les explications seront fortement basées sur le postulat que vous avez une gentoo comme hôte. Je tâcherai dans la mesure du possible de faire les correspondances générales de manière à permettre de préparer ce stage 4 depuis d'autres distributions Linux.

Début

Préparation

Vous avez gentoo sur hôte

$ mkdir ~/chroot
$ cd chroot
$ wget http://mirror.switch.ch/ftp/mirror/gentoo/releases/x86/current/stages/stage3-i686-2007.0.tar.bz2
# tar jxfp stage3-i686-2007.0.tar.bz2
# mount -o bind /dev dev
# mount -o bind /sys sys
# mount -t proc none proc
# mkdir usr/portage
# mount -o bind /usr/portage usr/portage
# cp -L /etc/resolv.conf etc/
# sudo chroot . /bin/bash

Ce que nous faisons:

  1. créer un dossier chroot dans votre home
  2. aller dans ce dossier
  3. télécharger le stage3 de gentoo2007.0
  4. décompresser stage3
  5. linker chroot/dev sur /dev
  6. linker chroot/sys sur /sys
  7. monter proc sur chroot/proc
  8. créer le dossier chroot/usr/portage
  9. linker chroot/usr/portage sur /usr/portage (cela fait gagner du temps et de la place!)
  10. copier le resolv.conf dans le /etc du chroot, ce qui permet d'avoir le réseau
  11. chroot directement dans le dossier ~/chroot

Vous n'avez pas gentoo sur hôte

$ mkdir ~/chroot
$ cd chroot
$ wget http://mirror.switch.ch/ftp/mirror/gentoo/releases/x86/current/stages/stage3-i686-2007.0.tar.bz2
$ wget http://mirror.switch.ch/ftp/mirror/gentoo/snapshots/portage-latest.tar.bz2
# tar jxfp stage3-i686-2007.0.tar.bz2
# mount -o bind /dev dev
# mount -o bind /sys sys
# mount -t proc none proc
# cp -L /etc/resolv.conf etc/
# chroot . /bin/bash
# tar jxfp portage-latest.tar.bz2 -C /usr/

Ce que nous faisons:

  1. créer un dossier chroot dans votre home
  2. aller dans ce dossier
  3. télécharger le stage3 de gentoo2007.0
  4. télécharger le dernier snapshot de portage
  5. décompresser stage3
  6. linker chroot/dev sur /dev
  7. linker chroot/sys sur /sys
  8. monter proc sur chroot/pro
  9. copier le resolv.conf dans le /etc du chroot, ce qui permet d'avoir le réseau
  10. chroot directement dans le dossier ~/chroot
  11. décompresser portage, en indiquant à tar de le chrooter dans /usr (cela permettra de créer /usr/portage et de mettre le contenu de l'archive dedans)

Stage3

Pour ce qui est de la configuration même de stage3, je ne vais pas recopier la doc gentoo, fort bien faite au demeurant. Je vous invite donc à aller la lire (attention, ne pas dépasser le chapitre 9 !).

Je vous conseille de faire le kernel à la main, SANS passer par genkernel. On n'est jamais mieux servi que par soi-même !

Stage4

Une fois votre système plus ou moins configuré, on va commencer les choses sérieuses. Votre système est presque prêt, du moins il pourrait fonctionner dans l'état sur une autre machine.

Seulement, on parle de stage4 permettant un déploiment rapide sur plusieurs machines. Et je doute que les end-users apprécient se retrouver devant un TTY 8-)

Donc, on va installer 2-3 trucs utiles :

# emerge grub xorg-server fluxbox mozilla-firefox

La liste est bien sûr un exemple, non-exhaustive. Il vous appartient de voir quel(s) package(s) sont utiles pour vos users. Je pense qu'un OpenOffice peut être indiqué, de même qu'un amarok ou autre lecteur de musique…

N'oubliez pas de vérifier si votre réserve de café est pleine avant de lancer la compilation d'OpenOffice (pour info, avec 2-3 optimisations il prend 2h20 sur un core2duo e4400).

café …. café….

Terminé?

Vous avez mis tous les programmes voulus? sûr? ok. Alors maintenant vient la partie cool de l'histoire : faut mettre ceci sur la cible !

Postulat 1 : la cible est déjà allumée sur un livecd genre DSL (Damn Small Linux)
Postulat 2 : au lieu de prendre des cafés et de regarder comment OOo compile sur votre ordinateur, vous avez déjà préparé le disque dur de notre cible.
Postulat 3 : la table de partition sera comme suit :
/dev/hda
 -> /dev/hda1 ext3, /
 -> /dev/hda2 swap, swap
 -> /dev/hda3 ext3, /home
Postulat 4 : vous avez monté la partition hda1 sur /mnt/chroot

Ok? à vous de faire la table de correspondance si vous avez des différences.

Maintenant, on va synchroniser tout cela : depuis cible

# rsync -rav root@hôte:/home/user/chroot /mnt/
# cd /mnt/chroot
# mount -t proc none proc
# mount -o bind /dev dev
# mount -o bind /sys sys
# grep -v 'sysfs' /proc/mounts > etc/mtab
# chroot . /bin/bash
# grub-install --no-floppy /dev/hda
# exit
# reboot

Si grub-install ne marche pas (cela a été mon cas…), vous pouvez faire comme suit, après le chroot :

# grub
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
# exit
# reboot

“Et Voilà”. Votre cible est installée, et même mieux, son disque dur n'est absolument pas fragmenté!

Conclusions

Ce n'est pas trop compliqué. Si on sait installer gentoo, on sait faire un stage 4. Pour les petites finesses et les optimisations possibles, voici quelques liens forts utiles dans votre quête de savoir :

  • gentoo-wiki fr ou en
  • handbooks fr ou en

Diese Seit ist zur Zeit nur auf Französisch verfügbar.

Sie können mit der Übersetzung helfen!


Questa pagina è disponibile soltanto in francese per il momento.

Potete aiutare con la traduzione.

Powered by Dokuwiki - fr/documentation/gentoo/stage4.txt · Dernière modification: 2011/07/18 08:44 (modification externe)