Page suivante Page précédente Table des matières
3. Disquettes
3.1 Aperçu des types de disquettes
Les disquettes de type amorce se classent en 4 catégories. La plus grande partie de ce texte peut aussi bien s'appliquer à des disques durs.
Aperçu des types de disquettes et de leur utilisation :
- amorce (boot)
Une disquette contenant un noyau qui peut être lancé. La disquette peut contenir un système de fichiers et utiliser un lanceur, ou elle peut contenir uniquement un noyau au début de la disquette.
- racine (root)
Une disquette avec un système de fichiers contenant tout ce qui est nécessaire pour démarrer un système Linux. Elle ne contient pas obligatoirement un noyau ou un lanceur.
Cette disquette peut être utilisée pour utiliser le système indépendamment de tout autre disque, une fois que le noyau s'est lancé. Une possibilité spéciale du noyau permet de monter une disquette racine séparée après avoir démarré, cette disquette étant copiée dans un disque virtuel en mémoire.
Vous pouvez utiliser ce type de disquette pour vérifier l'intégrité d'un autre disque sans le monter, ou encore pour rétablir un autre disque après un plantage disque ou une perte de fichiers.
- amorce/racine (boot/root)
Une disquette identique à une disquette racine, sauf qu'elle contient un noyau et un lanceur. On peut l'utiliser pour amorcer et utiliser le système. L'avantage de ce type de disquette est la compacité ; tout ce qui est nécessaire tient sur une seule disquette. Néammoins, l'augmentation progressive de la taille des différents fichiers fait qu'il n'est pas toujours possible de tout faire tenir dans une seule disquette.
- utilitaires (utility)
Une disquette qui contient un système de fichiers mais qui n'est pas destinée à être montée comme une disquette racine. Vous utiliserez ce type de disquette si vous avez trop d'utilitaires pour pouvoir tout mettre sur votre disquette racine.
Le terme "disquette utilitaires" ne s'applique réellement qu'à des disquettes contenant véritablement des paquetages de récupération/restauration.
3.2 Amorçage
Aperçu
Tous les PC démarrent en exécutant une routine du BIOS chargeant le secteur 0 du cylindre 0 du disque/disquette d'amorce. Sur la plupart des disques amorçables, le secteur 0 du cylindre 0 contient soit :
- une routine d'un lanceur comme LILO qui repère l'emplacement du noyau, le charge et l'exécute pour effectuer le démarrage proprement dit.
- le lancement d'un noyau d'un système d'exploitation, Linux par exemple.
Si un noyau Linux est écrit sur une disquette via le périphérique
/dev/fd0alors le premier secteur de celle-ci sera le premier secteur du noyau Linux, et ce secteur se chargera de continuer l'initialisation en chargeant le reste du noyau et en démarrant Linux. Pour une description plus détaillée du contenu du secteur d'amorce, voir la documentation delilo-0.5ou des versions suivantes.Une autre méthode pour copier un noyau sur une disquette d'amorce est de créer un système de fichiers, non pas comme périphérique racine, mais simplement pour installer LILO, ceci permettant de préciser des options du démarrage.
Indiquer la racine
Le noyau doit d'une façon ou d'une autre savoir quelle partition de quel disque utiliser comme racine. On peut fournir cette information de plusieurs façons:
- En définissant
ROOT_DEV = <périphérique>dans le makefile du noyau Linux, et en le recompilant (pour des conseils sur la recompilation du noyau, lire la FAQ Linux et regarder dans/usr/src/linux). Des commentaires dans le makefile décrivent les choix possibles pour<périphérique>. En lançant l'utilitairerdev:Ceci fixera le périphérique racine du noyau contenu dansrdev <nom de fichier> <périphérique><nom de fichier>comme étant<périphérique>. Exemple :et le périphérique racine du noyau dans Image deviendra la première partition sur le premier disque SCSI.rdev Image /dev/sda1Il y a plusieurs façons de lancer
rdev. Essayez :et vous verrez comment utiliser cette commande.rdev -?Il n'y a en général pas besoin de fixer le périphérique racine pour une disquette car le noyau utilisé pour l'amorce pointe probablement déjà vers le bon périphérique. Mais il peut arriver que vous ayez un noyau d'une autre machine (provenant par exemple d'une distribution), ou que vous vouliez utiliser le noyau pour lancer une disquette racine. Ca ne coûte rien d'essayer : utilisez
rdevpour vérifier le périphérique racine d'un fichier contenant un noyau, avec :Le périphérique racine peut être changé dans le noyau par d'autres moyens querdev -r <nom de fichier>rdev. Pour plus d'informations, voir la FAQ à la fin de ce document.
Copier le noyau sur une disquette d'amorce
Une fois que le noyau est configuré il doit être copié sur la disquette d'amorce.
Si la disquette ne va pas contenir de système de fichiers, alors le noyau doit être copié en utilisant ainsi la commande
dd:dd if=<nom de fichier> of=<périphérique> où <nom de fichier> est le nom du noyau et <périphérique> est le périphérique du lecteur de disquette, habituellement /dev/fd0Le paramètre origine ("seek parameter") de la commande
ddn'a pas à être utilisé. Le fichier doit être copié au début, sur le secteur de d'amorce (secteur 0, cylindre 0).Le nom du périphérique varie. De nombreux systèmes ont
/dev/fd0comme alias (sous une forme ou sous une autre) du "vrai" périphérique correspondant au lecteur de disquette par défaut. Par exemple, si c'est un lecteur 3 1/2 par défaut ("lecteur A:" sous DOS), le nom du périphérique sera/dev/fd0H1440, mais habituellement,/dev/fd0correspondra au même périphérique.Si le noyau doit être copié sur une disquette d'amorce contenant un système de fichiers, alors : il faut monter sur un répertoire adéquat d'un système de fichiers lui-même déjà monté. Puis utiliser la commande
cp. Par exemple :mount -t ext2 /dev/fd0 /mnt cp Image /mnt umount /mnt
3.3 Racine
Aperçu
Un disque/une disquette racine contient un système Linux complet et fonctionnel, mais sans nécessairement inclure un noyau. En d'autres termes, la disquette peut ne pas être amorçable, mais une fois que le noyau fonctionne, la disquette racine contient tout ce qui est nécessaire pour un système Linux complet. Pour pouvoir être utilisée ainsi, la disquette doit inclure un minimum :
- Un système de fichiers.
- un ensemble minimal de répertoires :
dev,proc,bin,etc,lib,usr,tmp.- un ensemble d'utilitaires de base :
bash(pour avoir un shell),ls,cp, etc...- un ensemble minimum de fichiers de configuration :
rc,inittab,fstab, etc...- Les bibliothèques partagées des utilitaires.
Bien sûr, un système de fichiers ne devient utile que lorsque vous pouvez lancer un programme à partir de celui-ci, et une disquette racine n'est en principe utile que si vous :
- Vérifiez un système de fichiers sur un autre disque, par exemple votre partition racine de votre disque dur. Vous devez amorcer Linux à partir d'un autre disque/d'une autre disquette, par exemple avec une disquette racine. Puis vous pouvez lancer fsck sur votre partition disque racine originale alors qu'elle n'est pas montée.
- Restaurez tout ou partie de votre disque original à partir d'une archive en utilisant les utilitaires d'archivage et de compression comme
cpio,tar,gzipetftape.
3.4 Amorce/Racine
C'est la même chose qu'une disquette racine, avec en plus un noyau et un chargeur comme LILO.
Avec ce système, le noyau est copié sur la disquette racine, et LILO est alors lancé pour installer une configuration qui pointe vers le noyau de la disquette. Lors de l'amorçage, LILO chargera et lancera le noyau à partir de la disquette.
Plusieurs fichiers doivent être copiés sur la disquette pour que cette méthode fonctionne. Les détails de ces fichiers et de la configuration de LILO, ainsi qu'un exemple fonctionnel sont donnés ci-dessous dans la section intitulée "LILO".
Disque virtuel en mémoire et disquettes racines
Pour qu'une disquette racine soit efficace, vous devrez pouvoir la lancer depuis un disque virtuel en mémoire. Ceci évite d'avoir le système fonctionnant dans une boîte de sardine, comme ce serait le cas avec une disquette.
Le noyau Linux inclus une option avec laquelle sous certaines circonstance il copiera automatiquement le contenu de la disquette racine en disque-mémoire, puis selectionnera la racine comme étant le disque mémoire au lieu de la disquette. Les deux avantages majeurs :
- Le système est beaucoup plus rapide.
- Le lecteur de disquette est libéré, et permet d'utiliser d'autres disquettes.
Pour pouvoir utiliser cette possibilité il faut que :
- Le système de fichiers de la disquette soit un système de fichiers
minixouext2. Le système de fichiersext2est le plus utilisé. Notez que si vous avez un noyau Linux antérieur à 1.1.73, vous devriez jeter un coup d'oeil aux commentaires dans la section ci-dessous, intitulée "Systèmes de fichiers", pour voir si votre noyau supporteraext2. Si votre noyau est ancien, il se peut que vous ayez à utiliserminix.- Un disque mémoire doit être choisi lors de la configuration du noyau et de taille supérieure à la taille de la disquette.
Un disque mémoire peut être configuré dans le noyau de plusieurs façons :
- En décommentant la macro
RAMDISKdans le makefile du noyau Linux :pour définir un disque mémoire de 1440 x 1K blocs, la taille d'une disquette 3 1/2 haute densité.RAMDISK = -DRAMDISK=1440- En lançant l'utilitaire
rdev, disponible sur la plupart des systèmes Linux. Cet utilitaire affiche ou fixe les valeurs de certaines options du noyau comme la taille d'un disque mémoire. Pour définir un disque mémoire de 1440 blocs dans le noyau contenu dans le fichier Image, entrer :Ceci peut changer dans l'avenir, bien sûr. Pour voir ce dont votre version derdev -r Image 1440rdevest capable, entrez la commande :etrdev -?rdevdevrait afficher ses options.- En utilisant le lanceur LILO pour définir la taille à l'amorçage. Par exemple avec le paramètre :
demande un disque mémoire de 1440 x 1K blocks à l'amorçage.ramdisk = 1440- En interrompant l'amorçage automatique de LILO et en ajoutant
ramdisk=1440à la ligne de commande. Ce pourrait être :Voir la section sur LILO pour plus d'informations.vmlinux ramdisk=1440- En éditant le fichier noyau et en changeant les valeurs du début du fichier qui contiennent la taille du disque mémoire. Ce n'est réellement à faire qu'en dernier recours, mais c'est possible. Voir la FAQ à la fin de ce document pour plus d'informations.
La méthode la plus simple est de définir les paramètres (dont la taille du disque mémoire) dans le fichier de configuration de LILO, parce que vous aurez de toute façon à écrire un tel fichier.
La configuration de LILO est décrite brièvement dans la section intitulée "LILO", mais il est recommandé d'utiliser la dernière version stable de LILO de votre site ftp le plus proche, et de lire la documentation qui va avec.
3.5 Utilitaires
Souvent une disquette n'est pas suffisante pour stocker tous les logiciels dont vous aurez besoin pour analyser, réparer et restaurer les disques corrompus. Quand vous inclurez
tar,gzip,e2fsck,fdisk,Ftapeet autres, ils rempliront à eux seuls une disquette entière, peut-être plus si vous voulez beaucoup d'utilitaires.Ceci signifie qu'un ensemble de secours contient souvent une disquette "utilitaires", avec un système de fichiers contenant tous les fichiers supplémentaires requis. Cette disquette peut être montée sur un répertoire pratique, comme
/usr, sur un système amorce/racine.Créer un système de fichiers est réellement simple, et est décrit ci-dessous dans la section "Systèmes de fichiers".
Page suivante Page précédente Table des matières