Méthodes alternatives pour l'installation de Gentoo Linux
1.
À propos de ce document
Si la méthode d'installation standard qui consiste à démarrer à partir d'un
CD-ROM d'installation ne fonctionne pas pour vous (ou si vous n'aimez pas cette
prodécure), ce document vous aidera. Il s'agit d'une compilation des méthodes
alternatives pour l'installation de Gentoo Linux. Si vous préférez, ce guide
est la place pour des méthodes d'installation incongrues. Si vous connaissez
une méthode d'installation utile ou si vous avez concocté une drôle de façon
d'installer Gentoo, n'hésitez pas à l'écrire et à la poster sur notre système bugzilla.
2.
Amorcer un CD d'installation avec Smart BootManager
Téléchargez Smart BootManager depuis
http://btmgr.sourceforge.net/download.html. Les sources et des
paquets binaires pour Linux sont disponibles ainsi qu'une version .exe pour
Windows. Des ensembles pour le support de différentes langues sont aussi
disponibles. Pour l'instant, nous recommandons d'utiliser un paquet binaire
puisque la compilation du code source ne fonctionne pas avec les versions
récentes de NASM.
Compilez le logiciel à partir des sources ou téléchargez simplement le paquet
binaire. De nombreuses options sont disponibles lors de la création de votre
disquette de démarrage, tel qu'indiqué ci-dessous :
Exemple de code 2.1 : Options de Smart BootManager |
sbminst [-t theme] [-d drv] [-b backup_file] [-u backup_file]
-t theme select the theme to be used, in which the theme could be:
us = English theme de = German theme
hu = Hungarian theme zh = Chinese theme
ru = Russian theme cz = Czech theme
es = Spanish theme fr = French theme
pt = Portuguese theme
-d drv set the drive that you want to install Smart BootManager on;
for Linux:
/dev/fd0 is the first floppy driver,
/dev/hda is the first IDE harddisk driver.
/dev/sda is the first SCSI harddisk driver.
for DOS:
0 is the first floppy drive
128 is the first hard drive;
-c disable CD-ROM booting feature;
-b backup_file backup the data that will be overwritten for
future uninstallation;
-u backup_file uninstall Smart BootManager, should be used alone;
-y do not ask any question or warning.
|
Exemple de code 2.2 : Utiliser sbminst pour créer votre disquette de démarrage |
# sbminst -t fr -d /dev/fd0
|
Note :
Remplacez fd0 par le nom de votre lecteur de disquette si nécessaire.
|
Ensuite, insérez simplement la disquette dans le lecteur de l'ordinateur avec
lequel vous souhaitez amorcer le CD d'installation et insérez ce dernier dans le
lecteur de CD-ROM, puis démarrez l'ordinateur.
Vous serez accueilli par le dialogue de Smart BootManager. Choisissez votre
CD-ROM et appuyer sur Entrée pour amorcer le CD d'installation. Après le
démarrage, poursuivez avec les instructions d'installation standard.
Vous trouverez de l'information supplémentaire sur Smart BootManager à
http://btmgr.sourceforge.net/.
3.
Installation avec Knoppix
Note :
Knoppix n'est disponible que pour l'architecture x86.
|
L'amorçage à partir du LiveCD Knoppix
permet d'avoir un système Linux complètement fonctionnel pendant que vous
compilez Gentoo. Tux Racer vous aidera à tuer le temps pendant le
« bootstrap » du système.
Attention :
Notez que si vous sauvez quoi que ce soit dans votre répertoire personnel sous
Knoppix, vous ne le retouverez pas sous Gentoo après avoir redémarré la
machine. Vous devez sauver vos données quelque part sur le disque ou sur un
autre PC.
|
Démarrez avec le LiveCD Knoppix. Avec les versions 3.6 à 3.8.2, vous devrez
spécifier knoppix26 comme option de démarrage pour charger un noyau 2.6.
Si vous oubliez cette étape alors lors du chroot vous obtiendrez une
erreur indiquant que votre noyau est trop vieux. À partir de Knoppix 3.9, cela
n'est pas nécessaire, car le noyau par défaut est 2.6.x.
Par défaut Knoppix démarre sur l'environnement graphique KDE. Ouvrez une
konsole et tapez su - pour pouvoir changer votre mot de passe.
Vous pouvez alors changer le mot de passe root de Knoppix. Maintenant configurez
sshd pour permettre un accès distant si vous le souhaitez.
Exemple de code 3.1 : Créer le point de montage /mnt/gentoo |
# mkdir /mnt/gentoo
|
À partir de ce point, vous pouvez continuez avec le chapitre 4 des
instructions d'installation standard. Toutefois, lorsque l'on vous indique de
monter le système proc, exécutez plutôt la commande suivante :
Exemple de code 3.2 : Lier-monter le pseudo-système de fichiers proc |
# mount -o bind /proc /mnt/gentoo/proc
|
Veuillez noter que certaines options de Portage ne fonctionnent pas sous
Knoppix, notamment userpriv et usersandbox. Si vous recevez des
messages d'erreur, vous devriez désactiver ces options.
4.
Installation sur une machine sans disque avec PXE boot
Prérequis
Sur le client sans disque, vous aurez besoin d'un adaptateur réseau supportant
le protocole PXE pour le démarrage. Plusieurs cartes de 3com supportent ce
protocole. Vous aurez aussi besoin d'un BIOS qui supporte le démarrage par PXE.
Configuration de base du serveur
Création des répertoires : la première chose à faire est de créer les
répertoires où votre système sans disque sera entreposé. Créez un répertoire
nommé /diskless qui contiendra un sous-répertoire pour chaque
client sans disque. Pour le reste de ce document, nous utiliserons
« eta » comme nom de client.
Exemple de code 4.1 : Configurer les répertoires |
# mkdir /diskless
# mkdir /diskless/eta
# mkdir /diskless/eta/boot
|
Configuration DHCP et TFTP : le client obtiendra l'information de
démarrage par DHCP et téléchargera tous les fichiers requis par TFTP.
Installez DHCP avec emerge et configurez-le selon vos besoins de base.
Ensuite, ajoutez ce qui suit dans /etc/dhcp/dhcpd.conf.
Note :
Cette configuration fournit au client une adresse IP statique ainsi que le
chemin de l'image de démarrage PXE (pxegrub dans le cas présent).
Vous devez remplacer l'adresse MAC de la carte Ethernet du client ainsi que le
nom du répertoire où vous conservez les fichiers du client par vos propres
valeurs.
|
Utilisez la commande emerge dhcp pour installer DHCPd. Vous pouvez
utiliser un autre logiciel si vous le désirez. Vérifiez ensuite que la bonne
interface réseau est définie dans le fichier /etc/conf.d/dhcpd.
Exemple de code 4.2 : dhcpd.conf |
option option-150 code 150 = text ;
ddns-update-style none ;
host eta {
hardware ethernet 00:00:00:00:00:00;
fixed-address ad.res.se.ip;
option option-150 "/eta/boot/grub.lst";
filename "/eta/boot/pxegrub";
}
|
Ensuite vous devrez configurer votre interface dans le fichier
/etc/conf.d/net afin qu'elle ne soit pas effacée au démarrage.
Lisez le fichier /etc/conf.d/net.example pour plus d'informations.
Exemple de code 4.3 : /etc/conf.d/net |
config_eth0=( "noop" )
|
Pour TFTP, installez (avec emerge) app-admin/tftp-hpa. Dans le
fichier /etc/conf.d/in.tftpd, ajoutez ce qui suit :
Exemple de code 4.4 : in.tftpd |
INTFTPD_PATH="/diskless"
INTFTPD_USER="nobody"
INTFTPD_OPTS="-u ${INTFTPD_USER} -l -vvvvvv -p -c -s ${INTFTPD_PATH}"
|
Configuration de GRUB : pour fournir aux client le démarrage par PXE,
j'utilise GRUB en ajoutant la variable USE netboot. Une fois que GRUB
est compilé, copiez l'image PXE dans le répertoire de démarrage du client sans
disque. Puis, éditez le fichier de configuration grub.lst.
Exemple de code 4.5 : Configurer GRUB |
# echo "sys-boot/grub netboot" >> /etc/portage/package.use
# emerge -av grub
# cp /usr/lib/grub/pxegrub /diskless/eta/boot/pxegrub
# nano -w /diskless/eta/boot/grub.lst
|
Exemple de code 4.6 : grub.lst |
default 0
timeout 30
title=Diskless Gentoo
root (nd)
kernel /eta/bzImage ip=dhcp root=/dev/nfs nfsroot=ad.res.se.ip:/diskless/eta
|
Configuration de NFS : NFS est relativement simple à configurer. La seule
chose que avez à faire est d'ajouter une ligne au fichier de configuration
/etc/exports :
Exemple de code 4.7 : /etc/exports |
# nano -w /etc/exports
# /etc/exports: NFS file systems being exported. See exports(5).
/diskless/eta eta(rw,sync,no_root_squash)
|
Mise à jour des hôtes : il est important de modifier votre fichier
/etc/hosts pour qu'il satisfasse vos besoins.
Exemple de code 4.8 : /etc/hosts |
127.0.0.1 localhost
192.168.1.10 eta.exemple.com eta
192.168.1.20 sigma.exemple.com sigma
|
Créer le système sur le serveur
Vous pourriez redémarrer le serveur avec un CD d'installation Gentoo, bien que
cela ne soit pas nécessaire si vous maîtrisez l'installation de Gentoo depuis un
système installé. Suivez les instructions d'installation standard comme c'est
indiqué dans le Manuel Gentoo avec la
modification suivante : lorsque vous montez le système de fichiers,
exécutez la commande ci-dessous (remplacez hdaX par le nom de la
partition sur laquelle vous avez créé le répertoire /diskless).
Vous n'avez pas à monter d'autre partition puisque tous les fichiers requis
résident dans le répertoire /diskless/eta.
Exemple de code 4.9 : Monter le système de fichiers |
# mount /dev/hdaX /mnt/gentoo
|
Archives tar des stages et chroot : cet exemple utilise une archive tar
stage 3. Montez /proc dans le répertoire de votre client sans
disque et définissez ce répertoire comme racine du système (chroot) avant de
poursuivre l'installation. Suivez les instructions jusqu'à la configuration du
noyau.
Attention :
Soyez vigilant lors de l'extraction des fichiers de l'archive stage. Vous ne
souhaitez certainement pas remplacer les fichiers de votre système actuel par
ceux de l'archive...
|
Exemple de code 4.10 : Extraire l'archive tar du stage |
# cd /mnt/gentoo/diskless/eta/
# tar -xvjpf /mnt/cdrom/gentoo/stage3-*.tar.bz2
# mount -t proc /proc /mnt/gentoo/diskless/eta/proc
# cp /etc/resolv.conf /mnt/gentoo/diskless/eta/etc/resolv.conf
# chroot /mnt/gentoo/diskless/eta/ /bin/bash
# env-update
# source /etc/profile
|
Configuration du noyau : lorsque vous exécutez make menuconfig pour
configurer votre noyau, n'oubliez pas d'ajouter les options suivantes en plus
de celles recommandées dans les instructions d'installation.
Exemple de code 4.11 : Options de menuconfig |
- Support pour votre adaptateur réseau
- Dans la section "Networking options" :
[*] TCP/IP networking
[*] IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] IP: BOOTP support
- Dans la section "File systems --> Network File Systems" :
<*> NFS file system support
[*] Provide NFSv3 client support
[*] Root file system on NFS
|
Sauvez le noyau dans l'environnement « chrooté » (donc pas dans
/boot) tel que défini dans la configuration de pxegrub ci-dessus.
Ensuite, configurez le fichier /etc/fstab de votre client sans
disque.
Exemple de code 4.12 : /etc/fstab |
# nano -w /etc/fstab
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0
tmpfs /dev/shm tmpfs nodev,nosuid,noexec 0 0
|
Pour empêcher le client de lancer une vérification du système de fichiers,
utilisez l'astuce suivante :
Exemple de code 4.13 : Empêcher le client de vérifier le système de fichiers |
# touch /fastboot
# echo "touch /fastboot" >> /etc/conf.d/local.start
|
Ensuite, installez le paquet nfs-utils indispensable au bon
fonctionnement des clients.
Exemple de code 4.14 : Installer nfs-utils |
# emerge nfs-utils
|
Chargeur de démarrage. N'installez pas un autre chargeur de démarrage puisque
nous en avons déjà un : pxegrub. Terminez simplement l'installation et
redémarrez le serveur. Démarrez les services dont vous avez besoin pour
démarrer le nouveau client, soit : DHCP, TFTPD et NFS.
Exemple de code 4.15 : Démarrage des services |
# /etc/init.d/dhcp start
# /etc/init.d/in.tftpd start
# /etc/init.d/nfs start
|
Démarrer le nouveau client
Pour que le nouveau client démarre correctement, vous devez configurer le BIOS
et l'adaptateur réseau afin d'utiliser PXE comme première méthode de démarrage
(avant le CD-ROM ou la disquette). Pour obtenir de l'aide à ce sujet, consultez
les manuels pour votre matériel ou les sites Web des constructeurs.
L'adaptateur réseau devrait obtenir une adresse IP par DHCP et télécharger
l'image PXE de GRUB par TFTP. Vous verrez alors un élégant menu de démarrage
GRUB en noir et blanc. Choisissez le noyau à démarrer puis tapez Entrée. Si
tout se passe bien, le noyau devrait démarrer, monter le système de fichiers
racine par NFS et afficher une invite de connexion. Appréciez !
5.
Installer Gentoo à partir d'une distribution Linux déjà installée
Prérequis
Afin d'installer Gentoo à partir de votre distribution déjà installée, la
commande chroot doit être installée sur votre système. Vous devez aussi
disposer du fichier ISO ou de l'archive tar Gentoo que vous souhaitez installer.
Vue d'ensemble
Nous allons d'abord allouer une partition à Gentoo en redimensionnant la
partition Linux existante. Puis, nous monterons la partition et y
désarchiverons le fichier tar. Nous entrerons ensuite dans ce pseudo-système
avec la commande chroot. Nous pourrons alors débuter l'installation du
système. Une fois le « bootstrap » terminé, nous procéderons à la
configuration finale du système afin de s'assurer qu'il puisse démarrer. Nous
serons alors prêt à redémarrer et à utiliser Gentoo.
Comment faire de la place à Gentoo ?
La partition racine contient le système fichiers monté sur /.
Exécuter simplement mount sans argument permet de visualiser les
différents points de montage. Nous utiliserons aussi df (« disk
free ») pour savoir quelle quantité d'espace disque est disponible et
comment la partition sera redimensionnée. Notez bien qu'il n'est pas
obligatoire de redimensionner votre partition racine ! Vous pouvez choisir
n'importe quelle partition supportée par le programme de redimensionnement.
(Nous en reparlerons un peu plus loin.)
Exemple de code 5.1 : Obtenir de l'information sur le système de fichiers |
# mount
/dev/hdb2 on / type ext3 (rw)
none on /proc type proc (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
none on /dev/shm type tmpfs (rw,nodev,nosuid,noexec)
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hdb2 4.0G 1.9G 2.4G 82% /
none 38M 0 38M 0% /dev/shm
|
On remarque que la partition montée sur / se nomme
/dev/hdb2 et dispose de 2,4 Go d'espace libre. Je vais
redimensionner cette partition pour laisser 400 Mo d'espace libre, ce qui
permettra d'allouer 2 Go à Gentoo. Ça me semble approprié, car j'ai
l'intention d'y installer beaucoup de choses. Toutefois, un Go est
suffisant pour la plupart des utilisateurs. Maintenant, partitionnons !
Installer parted pour le redimensionnement des partitions
Parted est un utilitaire conçu par la fondation GNU, un immense et vénérable
projet. (Vous utilisez probablement des logiciels GNU en ce moment même). Cet
utilitaire sera pour nous un outil précieux. Le nom parted signifie
« partition editor ». Vous pouvez le télécharger à partir de
http://www.gnu.org/software/parted/.
Note :
Il existe d'autres outils servant à redimensionner des partitions. Toutefois,
l'auteur ne prétend pas savoir si ces outils (PartitionMagic™ et autres)
conviennent à ce que nous tentons de faire dans ce guide (l'auteur ne
s'intéresse d'ailleurs pas à ce type de logiciels). S'il souhaite utiliser un
outil alternatif, le lecteur devra déterminer lui-même si celui-ci est
approprié.
|
Recherchez sur cette page le type de système de fichiers que vous souhaitez
redimensionner et vérifiez si parted le supporte. Si ce n'est pas le cas, c'est
peine perdue ; vous devrez détruire une partition afin de faire de
l'espace pour Gentoo et réinstaller ensuite ce que vous aurez détruit. Si votre
système de fichiers est supporté, téléchargez le logiciel et installez-le.
Vous ferez alors face à un problème : puisque l'on souhaite redimensionner
la partition racine, il est nécessaire de redémarrer le système à partir d'une
disquette contenant un système Linux minimum ainsi que le programme parted,
pré-compilé puis copié sur cette disquette. Toutefois, si vous pouvez démonter
la partition que vous souhaitez redimensionner sans quitter Linux, vous n'avez
pas besoin de suivre les instructions suivantes. Vous n'avez qu'à compiler
parted et à l'exécuter sur la partition démontée de votre choix. Voici ce que
j'ai fait pour mon système.
Important :
Assurez-vous que les opérations que vous voulez faire sur vos partitions sont
supportées par parted !
|
Téléchargez la disquette démarrage/administration mininux (une
mini-distribution basée sur Linux 2.4) à partir de
http://mininux.free.fr/uk/. Créez une disquette tel que suggéré dans
la documentation qui accompagne le programme et insérez une nouvelle disquette
dans le lecteur pour l'étape suivante.
Note :
Bien sûr, Linux est synonyme de « Il y a plus d'une façon de le
faire. ». Notre objectif est d'exécuter parted sur une partition démontée.
Vous pouvez utiliser une disquette de démarrage/administration autre que
mininux. Cette étape n'est d'ailleurs pas toujours nécessaire ; dans
certains cas, vous pouvez par exemple simplement démonter le système de
fichiers de la partition à repartitionner puis exécuter parted sans quitter
votre session Linux.
|
Exemple de code 5.2 : Création d'une disquette pour l'utilitaire parted |
# mkfs.minix /dev/fd0
480 inodes
1440 blocks
Firstdatazone=19 (19)
Zonesize=1024
Maxsize=268966912
|
Nous allons maintenant procéder à la compilation de parted. Si le logiciel
n'est pas déjà téléchargé et désarchivé, faites-le maintenant et placez-vous
dans le répertoire correspondant avec la commande cd. Exécutez
les commandes suivantes afin de construire l'utilitaire et de le copier sur
votre disquette.
Exemple de code 5.3 : Compilation et installation de parted sur la disquette |
# mkdir /floppy; mount -t minix /dev/fd0 /floppy &&
export CFLAGS="-O3 -pipe -fomit-frame-pointer -static" && ./configure
&& make && cp parted/parted /floppy && umount /floppy
|
Félicitations ! Vous êtes prêt à redémarrer et à redimensionner votre
partition. Avant de faire cela, parcourez rapidement la documentation de parted
sur le site Web de GNU. Le redimensionnement ne devrait pas prendre plus de 30
minutes, même pour les disques les plus spacieux. Soyez patient. Redémarrez
votre système avec la disquette de démarrage mininux (insérez-la simplement dans
le lecteur) et, une fois votre session ouverte, remplacez la disquette par celle
contenant l'utilitaire parted. Ensuite, tapez mount /dev/fd0 /floppy pour
que parted soit monté sur /floppy. Et voilà ! Exécutez parted
et commencez le redimensionnement. Une fois cette longue procédure terminée,
vous serez prêt pour votre divertissement préféré : installer Gentoo. Pour
l'instant, redémarrez votre vieux système Linux. Le disque dur sur lequel vous
voulez opérer est celui qui contient la partition à redimensionner. Par exemple,
si vous redimensionnez /dev/hda3, le disque est /dev/hda.
Exemple de code 5.4 : Commandes à exécuter dans le système mininux |
# mount /dev/fd0 /floppy
# cd /floppy; ./parted [disque sur lequel vous vous opérer]
(parted) print
Disk geometry for /dev/hdb: 0.000-9787.148 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.031 2953.125 primary ntfs
3 2953.125 3133.265 primary linux-swap
2 3133.266 5633.085 primary ext3
4 5633.086 9787.148 extended
5 5633.117 6633.210 logical
6 6633.242 9787.148 logical ext3
(parted) help resize
resize MINOR START END resize filesystem on partition MINOR
MINOR is the partition number used by Linux. On msdos disk labels, the
primary partitions number from 1-4, and logical partitions are 5
onwards.
START and END are in megabytes
(parted) resize 2 3133.266 4000.000
|
Important : Soyez patient ! L'ordinateur travaille ! Vérifiez la diode du
disque dur sur votre boîtier pour le confirmer. La procédure devrait prendre
entre 2 et 30 minutes. |
Après le redimensionnement, redémarrez votre vieux système Linux. Ensuite,
suivez les instructions du Manuel Gentoo,
chapitre : Préparer les disques. Lorsqu'il est temps d'entrer dans
le nouveau système avec chroot, utilisez la commande suivante pour
nettoyer votre environnement :
Exemple de code 5.5 : Nettoyer l'environnement lors de l'utilisation de chroot |
# env -i HOME=$HOME TERM=$TERM chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update
# source /etc/profile
|
Appréciez !
Ce document est protégé par la licence Creative
Commons : Paternité - Partage des Conditions Initiales à
l'Identique 2.5.
|