Booter Linux avec Lilo ou Chose-OS

titre alternatif proposé: "Mater Li1010101010"




  1. Lilo
  2. Après une installation Linux, l'instant crucial pour le débutant est le reboot.
    Soit ça marche, et ça marchera toujours, soit ça ne marche pas du tout.

    Certains bootent avec un "boot manager" (comme "system commander"), mais même si c'est une solution à la portée de tous, elle a le désavantage (du moins pour system commander) de squatter une partition primaire. Or, quand on ne possède qu'un disque dur, et que l'on a Linux en dual boot avec windows , les 4 partitions primaires sont déja utilisées.
    Une partition DOS, une partition étendue, une partition Linux, une partition Linux-Swap, et déja plus de place!

    Heureusement, il y a Lilo, fournit gracieusement avec le système de base.
    Lilo s'invoque ainsi: /sbin/lilo
    Si /sbin est dans le path, tapez juste "lilo".
    Lilo a besoin du fichier "lilo.conf" (dans /etc).
    En général, ce fichier existe toujours, mais lilo n'est pas toujours activé. D'autre part, même quand lilo est activé, il ne permet pas de booter sur votre partition dos (celle qui lance windows).
    Sur mon PC, je boote au choix sur la partition dos (par défaut), sur la partition Linux (en tapant "linux" au prompt de Lilo), ou bien sur la partition Linux, mais avec un noyau de secours (en tapant "old" au prompt).
    Voyons comment tout cela s'organise dans le fichier "lilo.conf".

    
    default=dos
    boot=/dev/hda3
    map=/boot/map
    install=/boot/boot.b
    prompt
    timeout=50
    image=/boot/vmlinuz-2.0.33
    	label=old
    	root=/dev/hda3
    	read-only
    image=/boot/vmlinuz-2.0.36
    	label=linux
    	root=/dev/hda3
    	read-only
    other=/dev/hda1
    	label=dos
    	table=/dev/hda
    
    


    Donc, ma partition par défaut (si je tape return ou si j'attends 5 secondes) est la partition DOS. Le délai de 5 secondes est réglable grace à la ligne "timeout=50".
    Pourquoi avoir installé le boot sur hda3 plutôt que sur le master boot du hda ?
    C'est une groooße ruse, mein Freund!
    Certains OS sont plutôt envahissants, et considèrent qu'en dehors d'eux, il n'existe rien.
    Ils vont donc écraser de leurs grosses bottes cloutées le master boot pour installer leur propre loader (ex: les différentes versions de Windows).
    Ces OS partent du principe que la machine n'a qu'un disque dur, et le boot se fait sur le MBR.
    En fait, avec FDISK, on peut très bien sélectionner une autre partition pour le boot.
    Dans mon cas, c'est la troisième (hda3). Lilo va donc installer la séquence de boot sur la partition hda3, et lors de son exécution, il rendra éventuellement la main aux séquences de boots des autres systèmes.

    Ainsi, si vous installez un Windows, il va joyeusement écraser le MBR, mais n'empêchera pas Lilo de fonctionner, celui-ci restant imperturbable devant ce bruit et cette fureur.

    Le reste se passe de commentaires et est aisément compréhensible.
    N'oubliez cependant pas que:
    premier disque dur, première partition=/dev/hda1
    premier disque dur, troisième partition=/dev/hda3
    (en général, la 2ème partition (/dev/hda2) est squattée par la partition étendue du DOS)

    La ligne "root=/dev/hda3" corresponds à la partition qui contient le système de fichier "root" (nécéssaire pour booter). En effet, vous pouvez très bien monter un autre système de fichier sur une autre partition, ou même un autre disque.
    Seuls les possesseurs de disques SCSI trouveront un intéret à séparer leur système de fichier: le SCSI permet de paralléliser les accès au disque (une appli peut donc tourner en faisant appel au système). Gain de performances appréciable, mais réservé aux plus fortunés d'entre nous. (envoyez moi vos dons pour plus de renseignements sur le SCSI)




  3. Chose-Os
  4. Chose-Os remplit la même fonction que Lilo, à savoir booter. Hep, revenez, je n'ai pas fini!
    Seulement, Chose-Os est bien plus paramétrable que Lilo. Ses points forts sont:

    1. Il peut afficher un menu sélectionnable avec les touches du curseur.

    2. On peut rajouter une page de texte, ou un bel Ansi comme page d'accueil.

    3. Si on a un menu Dos, on peut paramétrer Chose-Os pour faire le choix dans ce menu à partir de la page d'accueil. (Chose-Os mettra alors dans le buffer clavier les touches correpondants à votre choix, ce qui diminuera le ratio de tâches répétitives que vous accomplissez tous les jours).


    Chose-Os se trouve facilement, j'ai cependant eu des échos d'une version qui provoquerait un Kernel Panic, et obligerait à rebooter avec une disquette.
    Je n'ai malheureusement pas plus de renseignements sur cette version.
    J'ai utilisé cette archive: chos-0_81-1_src.rpm. Elle fonctionne à merveille, et a pour taille 476Ko.
    Elle contient les sources et également les exécutables. Je n'ai pas eu besoin de compiler les sources, tout s'est très bien passé dès le premier boot.
    En fait, le plus compliqué a été de choisir un bel Ansi qui reflète bien mon Moi abyssal.

    Quand je parle d'Ansi, je parle d'un fichier binaire consistant en un dump de la mémoire vidéo.
    La mémoire vidéo en mode texte code chaque caractère sur deux octets: un octet pour l'attribut, c'est à dire la couleur du fond et du caractère, et un octet pour le caractère lui même.
    Chose-Os n'est pas un interprétateur de codes ESC (comme le vieux ansi.sys du Dos).
    C'est pour cela qu'il faut lui donner soit un fichier texte pur, soit un dump de la mémoire vidéo.
    Le dump de la mémoire vidéo s'obtient très facilement avec un utilitaire Dos tel que "The Draw" (vieux, lourd et commercial) ou "Acid Draw" (un freeware très bien fait). Il suffit de sauvegarder en mode "binaire".
    Les plus fous d'entre-nous utiliseront un ripper, comme au bon vieux temps où l'on chassait les images en mémoire en reconstituant laborieusement les bitplans à la calculette.


    Parlons maintenant des fichiers essentiels à Chose-Os.
    Le paquet que j'ai utilisé installe ses fichiers dans /usr/src/RedHat/SOURCES/Chos-0.81.
    Je ne parlerais pas de l'accessoire, comme Vchos, qui est un front-end en Tcl/Tk permettant de générer un fichier de configuration très facilement. De toute façon vous ne pourrez l'utiliser correctement qu'une fois que vous aurez tout compris.

    Vous devrez avoir ces fichier dans /boot

    chos.background
    chos.bsect
    chos.loader
    chos.loader-bsect
    chos.loader-linux
    chos.map

    Dans /etc, vous devrez avoir le fichier le configuration: "chos.conf".

    Il ne nous reste qu'à détailler le fichier de configuration:

    J'ai l'ai commenté au fur et à mesure.

    #
    # Choose-OS 0.81 configuration file.
    #
    
    #   General Settings
    
    # DELAY : nombre de secondes avant le choix par défaut.
    delay=30
    
    # AUTOBOOT : l'utilisateur fait un choix
    autoboot=no
    
    # INSTALL : partition où Chose-os s'installe (voir le paragraphe sur Lilo)
    install=/dev/hda3
    
    
    #   LOOK SETTINGS
    
    # INFOLINE : supprime le copyright qui recouvre mon Ansi.
    infoline=off
    
    # COLOR : couleur du menu.
    color=lightblue
    
    # SELECTION : couleur du menu sélectionné
    selection=lightgray
    
    # BACKGOUND : l'ansi à charger (vous pouvez le mettre ailleurs que dans "/root".
    # c'est un dump mémoire, il faut donc le préciser.
    background=dump:/root/bonom.bin
    
    # TIMERPOSITION : position du compteur. Coordonnées: (colonne,ligne)
    timerpos=69,23
    
    
    #   FILE SETTINGS
    
    #   IMAGES : ici, ce sont les différents choix de boot
    
    bootsect "   Win95   " {
      color=white,blue
      image=/dev/hda1
    # si on tape sur la touche "W", on charge direct Win95  
      hotkey=W,hidden
    # Ca correspond au choix "1" sur ma partition Dos (hda1)  
      dosmenukey=1
      position=59,11
    }
    
    bootsect "    Dos    " {
    
      color=white,blue
      image=/dev/hda1
      hotkey=D,hidden
    # On est toujours sur hda1, mais on prend le deuxième choix au menu Dos.
      dosmenukey=2
      position=59,13
    }
    
    linux "   Linux   " {
      color=white,blue
    # Ne pas oublier d'indiquer l'image et où elle se trouve.
      image=/boot/vmlinuz-2.0.36
      hotkey=L,hidden
      position=59,15
    # En dessous, c'est pour booter en mode texte étendu.
    #  cmdline= vga=EXTENDED
    }
    
    #ce menu va sur le menu DOS sans faire de choix
    #on ne charge pas le buffer clavier (peut dépanner au cas où..)
    bootsect " Menu  Dos " {
      color=white,blue
      image=/dev/hda1
      hotkey=M,hidden
      position=59,17
    }
    

    Voila, c'est tout, je pense que tout est dit. (on admirera la sobriété de la conclusion).



    Jean-Seb Lebarbier, 28 Juin 99
    jseb@linux-france.org



Retour Au Menu Linux