Mode de secours

Lorsque vous avez un problème, il existe plusieurs façons d'y remédier. Il importe cependant que vous compreniez bien comment le système fonctionne. Nous allons vous expliquer comment démarrer en mode de secours lorsque vous pouvez faire appel à vos propres connaissances pour dépanner le système.

Qu'est-ce qu'un mode de secours ?

Le mode de secours est une méthode permettant de démarrer un environnement Linux restreint, exclusivement à partir d'une disquette, d'un CD-ROM ou d'un autre support.

La suite de cette section peut vous aider à résoudre un problème.

Comme son nom l'indique, le mode de secours a pour vocation de venir à votre rescousse. En mode de fonctionnement normal, le système Red Hat Linux utilise des fichiers situés sur le disque dur pour tout faire ; exécuter des programmes, enregistrer des fichiers, etc..

Cependant, il peut arriver que vous ne soyez pas en mesure d'exécuter Linux complètement pour accéder à ses fichiers sur le disque dur de votre système. Le mode de secours permet d'accéder aux fichiers stockés sur le disque dur de votre système, même si vous ne pouvez pas exécuter Linux à partir de ce disque.

Vous pouvez avoir besoin du mode de secours si vous êtes confronté à l'une des deux situations suivantes :

Examinons de plus près chacun de ces scénarios.

Impossible de démarrer Linux

Ce problème résulte souvent de l'installation d'un autre système d'exploitation après l'installation de Red Hat Linux. Certains autres systèmes d'exploitation partent du principe qu'il n'y a pas d'autre système d'exploitation installé sur votre ordinateur et écrasent le MBR (Master Boot Record, bloc de démarrage maître) contenant à l'origine le chargeur de démarrage LILO. Si LILO est écrasé de cette manière, ce n'est pas votre jour de chance, à moins que vous ne puissiez passer en mode de secours.

Problèmes de matériel/logiciel

Les situations possibles, dans cette catégorie, sont aussi variées que les systèmes fonctionnant sous Linux. Un disque dur défectueux ou l'oubli d'exécuter LILO après la création d'un nouveau noyau sont deux exemples de problèmes pouvant empêcher le démarrage de Red Hat Linux. Si vous pouvez passer en mode de secours, vous serez peut-être en mesure de résoudre votre problème ou de faire une copie de vos principaux fichiers.

Pour démarrer le système en mode de secours, entrez le paramètre suivant à l'invite boot d'installation :

boot: linux rescue
	  

Vous pouvez accéder à l'invite boot d'installation en procédant de l'une des manières suivantes :

  • En démarrant le système sur la disquette ou le CD-ROM livré avec votre suite sous emballage Red Hat Linux.

  • En démarrant à partir d'un réseau ou d'une disquette d'amorçage PCMCIA. Ces méthodes partent de l'hypothèse que votre connexion réseau fonctionne et requièrent que vous identifiiez l'hôte du réseau et le type de transfert. Pour savoir comment spécifier ces informations, reportez-vous à la section "Installation via le réseau" du Chapitre 10.

Une fois le système en mode de secours, une invite s'affiche :

bash#
	  

A partir de cette invite, vous pouvez exécuter les commandes répertoriées ci-dessous :

anaconda          gzip        mkfs.ext2   ps
badblocks         head        mknod       python
bash              hwclock     mkraid      python1.5
cat               ifconfig    mkswap      raidstart
chatter           init        mlabel      raidstop
chmod             insmod      mmd         rcp
chroot            less        mmount      rlogin
clock             ln          mmove       rm
collage           loader      modprobe    rmmod
cp                ls          mount       route
cpio              lsattr      mpartition  rpm
dd                lsmod       mrd         rsh
ddcprobe          mattrib     mread       sed
depmode           mbadblocks  mren        sh
df                mcd         mshowfat    sync
e2fsck            mcopy       mt          tac
fdisk             mdel        mtools      tail
fsck              mdeltree    mtype       tar
fsck.ext2         mdir        mv          touch
ftp               mdu         mzip        traceroute
genhdlist         mformat     open        umount
gnome-pty-helper  minfo       pico        uncpio
grep              mkdir       ping        uniq
gunzip            mke2fs      probe       zcat
	  

Toutefois, si votre système de fichiers root n'est pas endommagé, vous pouvez le monter, puis exécuter n'importe quel utilitaire Linux standard. Par exemple, supposons que votre système de fichiers root se trouve dans /dev/hda5. Voici comment monter cette partition :

mount -t ext2 /dev/hda5 /foo
	    

/foo est un répertoire que vous avez créé.

Vous pouvez à présent exécuter chroot, fsck, man et d'autres utilitaires. A ce stade, vous exécutez Linux en mode mono-utilisateur.

Si vous ne connaissez pas les noms de vos partitions Linux, vous pouvez essayer de les deviner : le montage de partitions inexistantes ne présente aucun risque.

Démarrage directement en mode mono-utilisateur

Vous pouvez peut-être démarrer directement en mode mono-utilisateur. Si le système démarre mais ne vous permet pas de vous connecter une fois la séquence de démarrage terminée, essayez de redémarrer en spécifiant l'une des options suivantes à l'invite boot de LILO :


LILO boot: linux single
LILO boot: linux emergency
	  

En mode mono-utilisateur, l'ordinateur démarre au niveau d'exécution 1. Vos systèmes de fichiers locaux sont montés mais le réseau n'est pas activé. Vous obtenez un shell de maintenance du système utilisable.

En mode d'urgence, vous démarrez dans un environnement minimal. Le système de fichiers root est monté en lecture seule et quasiment rien n'est configuré. Le principal avantage de cette solution sur linux single est que vos fichiers init ne sont pas chargés. Si le programme init est endommagé ou ne fonctionne pas, vous pouvez toujours monter des systèmes de fichiers afin de récupérer des données qui pourraient être perdues en cours de réinstallation.

Astuce pratique

Avez-vous jamais reconstruit un noyau et, impatient d'essayer votre nouvelle oeuvre, redémarré le système avant d'exécuter LILO ? Et s'il n'y a plus d'entrée pour un noyau plus ancien dans le fichier lilo.conf ? Continuez à lire…

Souvent, il est possible de démarrer le système Red Hat Linux/Intel à partir de la disquette d'amorçage Red Hat Linux avec le système de fichiers root monté et prêt à fonctionner. Voici comment procéder :

Entrez la commande suivante à l'invite boot: de la disquette d'amorçage :

linux single root=/dev/hdXX initrd=
	  

(Remplacez XX dans /dev/hdXX par la lettre et le numéro approprié de votre partition root.)

Quel est l'effet de cette opération ? Tout d'abord, elle lance le démarrage en mode mono-utilisateur, avec la partition root définie sur votre partition root. La spécification initrd vide passe outre l'image en rapport avec l'installation sur la disquette d'amorçage, ce qui vous fait entrer immédiatement en mode mono-utilisateur.

Y-a-t-il un revers à la médaille ? Malheureusement, oui. Du fait que le noyau sur la disquette d'amorçage de Red Hat Linux ne prend en charge que l'IDE intégrée, ceux qui utilisent un système de type SCSI ne peuvent pas tirer parti de cette astuce. Dans ce cas, il ne leur reste plus qu'à utiliser la combinaison disquette d'amorçage/de secours évoquée plus haut.