Ce chapitre commence avec quelques informations générales sur le démarrage de Debian GNU/Linux, ensuite chaque section décrit une méthode particulière d'installation, pour finir par quelques conseils de dépannage.
Les paramètres de démarrage sont des paramètres pour le noyau Linux qui sont généralement utilisés pour s'assurer que certains périphériques sont correctement détectés. La plupart du temps, le noyau auto-détecte les informations nécessaires concernant vos périphériques. Cependant, dans certains cas, vous aurez à aider un peu le noyau.
Toutes les informations nécessaires sur les paramètres de démarrage sont
disponibles dans le Linux BootPrompt
HOWTO
; la présente section contient seulement un résumé des
paramètres les plus utilisés.
Si vous êtes en train d'essayer d'installer le système pour la première fois, utilisez les paramètres par défaut (c'est-à-dire, n'ajoutez aucun paramètre) et voyez si cela fonctionne correctement. Cela sera vraisemblablement le cas. Sinon, vous pourrez redémarrer ultérieurement avec les paramètres appropriés à votre matériel.
Lorsque le noyau démarre, un message Memory: availk/totalk available doit être affiché assez tôt durant le processus. total doit correspondre à la quantité de mémoire vive (exprimée en kilo-octets) que contient votre machine. Si la quantité de mémoire vive détectée ne correspond pas à la quantité de mémoire contenue dans votre machine, vous devrez utiliser le paramètre mem=ram, où ram est la taille mémoire de votre machine, suivie par « k » pour kilo-octets ou « m » pour méga-octets. Par exemple, mem=65536k et mem=64m sont équivalents pour forcer l'utilisation de 64 Mo de mémoire vive.
Si votre moniteur est noir & blanc, utilisez le paramètre mono. Sinon, votre installation se fera en couleur, ce qui est l'option par défaut.
Si vous démarrez avec une console série, en général, le noyau le détecte automatiquement. Si vous avez une carte vidéo (framebuffer) et un clavier également connectés à l'ordinateur que vous voulez démarrer à l'aide de la console série, vous devrez peut-être passer l'option console=device au noyau, où device est votre interface série, c'est à dire quelque chose comme "ttyS0".
De nouveau, tous les détails sur les paramètres de démarrage peuvent être
trouvés dans le Linux BootPrompt
HOWTO
, y compris les astuces pour le matériel peu courant. Quelques
pièges courants sont inclus ci-dessous dans la section Dépannage en cas de
problème à l'amorçage, Section 6.6.
Le système d'installation reconnaît quelques arguments qui peuvent s'avérer utiles.
Durant la séquence de démarrage, vous pourriez voir beaucoup de messages du genre can't find something, ou something not present, can't initialize something, ou même this device driver depends on something. La plupart de ces messages sont sans conséquence. Vous les voyez parce que le noyau du système d'installation est conçu pour tourner sur des ordinateurs avec un grand nombre de périphériques très différents. Evidemment, aucun ordinateur ne possède tous les périphériques possibles à la fois, et l'ordinateur pourrait se plaindre parce qu'il recherche un périphérique que vous ne possédez pas. Vous pourriez également voir le système s'arrêter pendant un moment. Cela arrive quand il attend une réponse d'un périphérique qui n'est pas présent sur votre système. Si vous trouvez le temps de démarrage du système exagérément long, vous pouvez créer un noyau "personnalisé" plus tard (voyez Compiler un nouveau noyau, Section 8.4).
Dans certains cas, vous pourriez avoir envie de démarrer le système à partir d'un autre système d'exploitation existant. Vous pouvez également démarrer le système d'autre façon et ensuite installer le système de base à partir du disque.
Vous pouvez installer Debian à partir d'une partition ext2fs ou Minix. Cette technique est tout à fait adaptée, si vous remplacez votre système Linux actuel par Debian, par exemple.
Remarquez néanmoins que la partition à partir de laquelle vous
installez ne devrait pas être la même que celle sur laquelle vous
installez (par exemple, /
, /usr
, /lib
,
etc.).
Pour installer à partir d'une partition Linux existante, suivez les étapes suivantes :
http://http.us.debian.org/debian/dists/potato/main/disks-arm/current/base2_2.tgz
Si vous avez un CD bootable, et si votre architecture et votre système supportent le démarrage à partir d'un CD-ROM, vous n'avez pas besoin de disquettes.
Même si vous ne pouvez pas démarrer à partir du CD-ROM, vous pouvez installer le système de base Debian à partir du CD-ROM. Il suffit de démarrer en utilisant un autre média, tel que les disquettes. Au moment d'installer le système de base et les paquetages supplémentaires, indiquez au système d'installation le lecteur de CD-ROM, comme décrit dans ``Installer le système de base'', Section 7.14.
Vous devez mettre sur pied un serveur RARP, un serveur BOOTP et un serveur TFTP.
Le Reverse Address Resolution Protocol (RARP) est une façon d'indiquer à votre client quelle addresse IP utiliser pour lui-même. Une autre façon est d'utiliser le protocole BOOTP. BOOTP est un protocole IP qui informe un ordinateur de son adresse IP et d'où sur le reseau il peut obtenir une "boot image".
Le Trivial File Transfer Protocol (TFTP) est utilisé pour servir au client une image de démarrage. Théoriquement, n'importe quel serveur, sur n'importe quelle plate-forme, qui implémente ces protocoles peut être utilisé. Dans les exemples de cette section, nous fournissons les commandes pour SunOS 4.x, SunOS 5.x (c-à-d Solaris), et GNU/Linux.
Pour installer RARP, vous avez besoin de connaître l'adresse du client (c-à-d son adresse MAC). Si vous ne connaissez pas cette information, vous pouvez démarrer en mode "Rescue" (par ex., à partir de Rescue Floppy) et utiliser la commande /sbin/ifconfig eth0.
En GNU/Linux, vous devez remplir la table ARP du noyau. Pour faire cela, exécutez
/sbin/rarp -s client-hostname client-enet-addr /usr/sbin/arp -s client-ip client-enet-addr
Sous SunOS, il faut vous assurer que l'adresse MAC Ethernet pour le client est
listée dans la base de données "ethers" (soit dans le fichier
/etc/ethers
, soit via NIS/NIS+) et dans la base de données
"hosts". Vous devez ensuite démarrer le démon RARP. Sous SunOS 4,
exécutez la commande (en tant que "root"): /usr/etc/rarpd
-a; sous SunOS 5, exécutez /usr/sbin/rarpd -a.
Il y a 2 serveurs BOOTP disponibles pour GNU/Linux, le bootpd CMU et le dhcpd
ISC, qui se trouvent dans les paquetages bootp
et
dhcp
sur Debian GNU/Linux.
Pour utiliser le bootpd CMU, vous devez d'abord "dé-commenter" (ou
ajouter) la ligne nécessaire dans /etc/inetd.conf
. Sur Debian
GNU/Linux, vous pouvez lancer update-inetd --enable bootps, puis
/etc/init.d/inetd reload. Ailleurs, la ligne en question devrait
être :
bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
Ensuite, vous devez créer un fichier /etc/bootptab
. Celui a le
même format un peu cryptographique que les vieux bons fichiers BSD
printcap(5)
, termcap(5)
et disktab(5)
.
Voyez la page de manuel bootptab(5)
pour plus d'informations.
Pour le bootpd CMU, vous aurez besoin de connaître l'adresse hardware (MAC) du
client.
Au contraire, configurer BOOTP avec le dhcpd
d'ISC est vraiment
facile, parce qu'il traite les clients BOOTP comme une classe apparentée aux
clients DHCP. Vous n'avez pas vraiment besoin de connaître l'adresse hardware
(MAC) du client, à moins que vous vouliez spécifier des options particulières,
du genre fichier image de démarrage ou chemin NFS, client par client; ou que
vous vouliez attribuer des adresses IP toujours identiques à vos clients, en
utilisant BOOTP et/ou DHCP. Ajoutez simplement la directive allow
bootp au bloc de configuration relatif au client particulier, et
redémarrez dhcpd
avec /etc/init.d/dhcpd restart.
Pour mettre le serveur TFTP en route, vous devrez d'abord vous assurer que
tftpd
tourne. Cela est généralement réalisé en mettant la ligne
suivante dans /etc/inetd.conf
:
tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd /tftpboot
Regardez dans ce fichier et essayez de retenir quel répertoire est utilisé
comme argument de in.tftpd
; vous en aurez besoin par la suite.
L'argument -l permet à certaines version de in.tftpd
de "loguer" tous les requêtes dans les logs du système; c'est très
pratique pour diagnostiquer des erreurs de démarrage. Si vous modifiez le
fichier /etc/inetd.conf
, vous devrez notifier au programme
inetd
qui tourne, que le fichier a changé. Sur une machine
Debian, exécutez /etc/init.d/netbase reload (pour potato/2.2 et
systèmes plus récents, utilisez /etc/init.d/inetd reload); sur
d'autres machines, retrouvez l'ID de processus de inetd
et
exécutez kill -HUP inetd-pid.
Ensuite, placez l'image de démarrage TFTP dont vous avez besoin, telle qu'on la
trouve dans Description des
fichiers du système d'installation, Section 5.4, dans le répertoire d'image
de démarrage de tftpd
. En général, ce répertoire se trouve dans
/tftpboot
. Ensuite, vous devrez créer un lien symbolique entre ce
fichier et le fichier spécifique que tftpd
utilise pour démarrer
un client particulier. Malheureusement, le nom du fichier est déterminé par le
client TFTP, et il n'y a pas vraiment de standards.
Souvent, le fichier que recherche le client TFTP sera
ip-client-en-hexa-architectureclient. Pour calculer
ip-client-en-hexa, prendre chaque octet de l'adresse IP du client et
la convertir en hexadécimal. Si vous avez un ordinateur à portée de main avec
le programme bc
, vous pouvez l'utiliser : exécutez d'abord la
commande obase=16 pour mettre la sortie en hexadécimal, ensuite
entrez les parties de l'adresse IP l'une après l'autre. En ce qui concerne
architectureclient, essayez quelques valeurs.
Une fois que vous avez déterminé le nom, créez le lien comme suit : ln /boot/tftpboot.img /boot/file-name.
PAS ENCORE ECRIT
C'est plus proche de "installation tftp avec peu de mémoire" parce que vous ne voulez pas charger de ramdisk, mais démarrer à partir du système de fichier nfs-root que vous venez de créer. Vous devez alors remplacer le lien symbolique vers l'image tftpboot par un lien vers l'image du noyau (c-à-d linux-a.out).
Si vous rencontrez des problèmes ou si le noyau plante pendant la phase d'amorçage, ou ne reconnaît pas certains de vos périphériques ou encore si certains de vos lecteurs ne sont pas reconnus correctement, la première chose à faire est de vérifier ou modifier les paramètres de démarrage (voir Paramètres du démarrage, Section 6.1).
Souvent, les problèmes peuvent être résolus en enlevant certains périphériques et en tentant d'amorcer à nouveau.
Si vous avez toujours des problèmes, soumettez un rapport de bogue. Envoyez un
email à submit@bugs.debian.org
(en
anglais). Vous devez inclure les lignes suivantes au tout début de
votre message:
Package: boot-floppies Version: version
Assurez-vous que vous avez remplacé le champ version par le numéro de version des disquettes d'installation que vous utilisez. Si vous ne connaisez pas le numéro de version, utilisez la date à laquelle vous avez téléchargé les disquettes et incluez le nom de la distribution (i.e., « stable », « frozen »).
Vous devez également inclure les informations suivantes dans votre rapport de bogue :
architecture: arm modèle: marque et modèle de votre ordinateur mémoire: taille de votre mémoire RAM scsi: nom de votre contrôleur SCSI, si vous en possédez un cd-rom: modèle de votre CD-ROM et son interface, i.e., ATAPI carte réseau: modèle et marque de votre carte réseau si vous en possédez une pcmcia: détails de vos périphériques PCMCIA
Suivant la nature du bogue, il peut également être utile de donner le modèle du disque dur, sa capacité et votre modèle de carte vidéo.
Dans votre rapport de bogue, décrivez précisement quel est votre problème, en incluant les dernières lignes affichées par le noyau dans le cas ou le noyau « plante » au début de l'installation. Décrivez les étapes qui vous ont amené au problème sur lequel vous butez.