Guide d'installation de Solaris 10 : Installations basées sur les réseaux

Chapitre 4 x86 : Initialisation GRUB pour l'installation de Solaris

Ce chapitre décrit l'initialisation GRUB sur des systèmes x86 pour l'installation de Solaris. Ce chapitre se compose des sections suivantes :

x86 : Initialisation GRUB (Présentation)

Démarrage avec la version Solaris 10 1/06, GRUB, le chargeur de démarrage open source, a été adopté comme comme chargeur de démarrage par défaut dans le système d'exploitation (OS) Solaris.


Remarque –

L'initialisation GRUB n'est pas disponible sur des systèmes SPARC.


Le chargeur de démarrage est le premier programme qui est exécuté après avoir mis le système sous tension. Une fois le système x86 sous tension, le BIOS (système de base d'entrée/sortie, Basic Input/Output System) initialise l'UC, la mémoire et le matériel de la plate-forme. Lorsque la phase d'initialisation est terminée, le BIOS charge le chargeur de démarrage à partir du périphérique d'initialisation, puis transfère le contrôle du système au chargeur de démarrage.

GRUB est un chargeur de démarrage open source doté d'une interface organisée par menus contenant des options d'initialisation déjà définies dans un fichier de configuration. GRUB propose également une interface par ligne de commande accessible depuis l'interface par menus et autorisant l'exécution de différentes commandes d'initialisation. Dans le système d'exploitation Solaris, l'implémentation GRUB est compatible avec la spécification Multiboot (amorçage multiple). La spécification est décrite en détails dans http://www.gnu.org/software/grub/grub.html.

Le noyau Solaris étant totalement compatible avec la spécification Multiboot, vous pouvez initialiser un système x86 Solaris à l'aide de GRUB. GRUB autorise une initialisation facile et l'installation de différents systèmes d'exploitation. Par exemple, sur un système, il est possible d'initialiser individuellement les systèmes d'exploitation suivants :

Avantage important, GRUB est intuitif à propos des systèmes de fichiers et formats des exécutables des noyaux ; il est donc en mesure de charger un système d'exploitation sans avoir à enregistrer la position physique du noyau sur le disque. L'initialisation GRUB permet de charger le noyau en spécifiant son nom de fichier, le lecteur et la partition hébergeant le noyau. L'initialisation GRUB remplace l'assistant de configuration des périphériques de Solaris et simplifie le processus d'initialisation grâce au menu GRUB.

x86 : Fonctionnement de l'initialisation GRUB

Dès que GRUB prend le contrôle du système, un menu apparaît sur la console. Le menu GRUB vous permet d'effectuer les opérations suivantes :

Un délai d'attente configurable permet de lancer l'initialisation de l'entrée du système d'exploitation par défaut. Il suffit d'appuyer sur une touche pour abandonner ce lancement.

Pour voir un exemple de menu GRUB, reportez-vous à la rubrique Description du menu principal de GRUB.

x86 : Conventions d'attribution de noms de périphériques GRUB

Les conventions d'attribution de noms utilisées par GRUB diffèrent légèrement de celles employées dans les versions précédentes du système d'exploitation Solaris. La compréhension des conventions d'attribution de nom peut vous aider à spécifier correctement des informations relatives à des lecteurs et des partitions, lors de la configuration GRUB sur votre système.

Le tableau suivant décrit les conventions d'attribution de noms de périphériques de GRUB.

Tableau 4–1 Conventions d'attribution de nom pour des périphériques GRUB

Nom périphérique 

Description 

(fd0), (fd1)

Première disquette, deuxième disquette 

(nd)

Périphérique réseau 

(hd0,0), (hd0,1)

Première et deuxième partition fdisk du premier disque bios

(hd0,0,a), (hd0,0,b)

Tranche 0 et 1 Solaris/BSD sur une première partition fdisk sur le premier disque bios


Remarque –

Tous les noms de périphériques GRUB doivent être mis entre parenthèses. Les numéros de partition sont comptés à partir de 0 (zéro), et non à partir de 1.


Pour plus d'informations sur les partitions fdisk, reportez-vous à la rubrique Guidelines for Creating an fdisk Partition du System Administration Guide: Devices and File Systems.

x86 : Où trouver des informations à propos des installations GRUB

Pour plus d'informations sur ces modifications, reportez-vous aux références suivantes :

Tableau 4–2 Où trouver des informations sur des installations GRUB

Rubrique 

Menu Tâches de GRUB 

Pour plus d'informations 

Installation 

Pour procéder à une installation à partir d'un média CD ou DVD du système d'exploitation Solaris 

Guide d’installation de Solaris 10 : Installations de base.

Pour procéder à une installation à partir d'une image d'installation réseau 

Partie II, Installation sur un réseau LAN

 

Pour configurer un serveur DHCP pour des installations réseau 

Préconfiguration des informations de configuration système à l'aide du service DHCP - Tâches

 

Pour procéder à une installation avec le programme JumpStart de personnalisation 

Exécution d’une installation JumpStart personnalisée du Guide d’installation Solaris 10 : Installations JumpStart personnalisée et avancée

 

Pour activer ou se rabattre sur un environnement d'initialisation à l'aide de Solaris Live Upgrade 

Administration système 

Pour plus d'informations détaillées à propos de GRUB et concernant des tâches administratives  

Chapitre 11, GRUB Based Booting (Tasks) du System Administration Guide: Basic Administration

x86 : Initialisation GRUB (Planification)

Cette section décrit les principes d'une initialisation GRUB ainsi que le menu GRUB.

Lorsque vous installez le système d'exploitation Solaris, deux entrées de menu GRUB sont installées sur le systèmes par défaut. La première est l'entrée Solaris OS. La deuxième entrée est l'archive d'initialisation de secours (failsafe) ; elle est utilisée pour la récupération du système. Les entrées du menu GRUB de Solaris sont installées et mises à jour automatiquement lors des processus d'installation et de mise à niveau des logiciels Solaris. Le système d'exploitation gère directement ces entrées, elles ne doivent pas être modifiées manuellement.

Lors d'une installation standard du système d'exploitation Solaris, GRUB est installé sur la partition fdisk de Solaris sans modifier le paramétrage BIOS du système. Si l'OS n'est pas sur le disque d'initialisation du système, vous devez effectuer l'une des opérations suivantes :

La meilleure méthode consiste à installer le système d'exploitation Solaris sur le disque d'initialisation. Si plusieurs systèmes d'exploitation sont installés sur la machine, vous pouvez ajouter des entrées dans le fichier menu.lst. Ces entrées apparaîtront ensuite dans le menu GRUB lors de la prochaine initialisation de votre système.

Pour plus d'informations sur les systèmes avec plusieurs systèmes d'exploitation, reportez-vous à la rubrique How Multiple Operating Systems Are Supported in the GRUB Boot Environment du System Administration Guide: Basic Administration.

x86 : Exécution d'une installation GRUB à partir du réseau

L'exécution d'une initialisation réseau avec GRUB nécessite un serveur DHCP configuré pour des clients PXE et un serveur d'installation fournissant un service tftp. Le serveur DHCP doit être en mesure de répondre aux classes DHCP, PXEClient et GRUBClient. La réponse DHCP doit contenir les informations suivantes :


Remarque –

rpc.bootparamd, qui est habituellement une exigence sur le côté serveur pour l'exécution d'une initialisation réseau, n'est pas requis pour une initialisation réseau GRUB.


Si aucun serveur PXE ou DHCP n'est disponible, vous pouvez charger GRUB à partir du CD-ROM ou du disque local. Vous pouvez alors configurer manuellement le réseau dans GRUB et télécharger ensuite le programme d'amorçage multiple (multiboot) et l'archive d'initialisation à partir du serveur de fichiers.

Pour plus d'informations, reportez-vous à la rubrique x86 : Présentation de l'initialisation et de l'installation sur le réseau à l'aide de PXE.

Description du menu principal de GRUB

Lorsque vous initialisez un système x86, le menu GRUB s'affiche. Ce menu présente la liste des entrées d'initialisation pour vous permettre d'en choisir une. Une entrée d'initialisation est une instance du système d'exploitation installée sur votre système. Le menu GRUB s'appuie sur le fichier de configuration menu.lst. Créé par le programme d'installation de Solaris, le fichier menu.lst peut être modifié après l'installation. Le fichier menu.lst dicte la liste des instances des systèmes d'exploitation apparaissant dans le menu GRUB.


Exemple 4–1 Menu principal GRUB

Dans l'exemple suivant, le menu principal GRUB présente les systèmes d'exploitation Solaris et Microsoft Windows. Un environnement d'initialisation Solaris Live Upgrade figure également sur la liste sous l'appellation second_disk. La description de chaque élément de menu est donnée dans ce qui suit.


GNU GRUB version 0.95 (616K lower / 4127168K upper memory)
+-------------------------------------------------------------------+
|Solaris                                                            |
|Solaris failsafe                                                   |
|second_disk                                                        |
|second_disk failsafe                                               |
|Windows                                                            |
+-------------------------------------------------------------------+
Use the ^ and v keys to select which entry is highlighted. Press
enter to boot the selected OS, 'e' to edit the commands before
booting, or 'c' for a command-line.
Solaris

Indique le système d'exploitation Solaris.

Solaris failsafe

Indique l'archive d'initialisation disponible pour une récupération si le système d'exploitation est endommagé.

second_disk

Indique l'environnement d'initialisation Solaris Live Upgrade L'environnement d'initialisation second_disk a été créé comme une copie du système d'exploitation Solaris. Il a été mis à niveau et activé avec la commande luactivate. L'environnement d'initialisation est disponible pour une initialisation.

Windows

Indique le système d'exploitation Microsoft Windows. GRUB détecte ces partitions mais ne vérifie pas que le système d'exploitation peut être initialisé.


Description du fichier GRUB menu.lst

Le fichier GRUB menu.lst répertorie le contenu du menu principal GRUB. Le menu principal GRUB liste les entrées de toutes les instances des systèmes d'exploitation installés sur votre système, notamment les environnements d'initialisation Solaris Live Upgrade. Le processus de mise à niveau des logiciels Solaris conserve toutes les modifications que vous avez apportées à ce fichier.

Toutes les révisions effectuées sur le fichier menu.lst sont affichées sur le menu principal GRUB avec les entrées Solaris Live Upgrade. Toute modification apportée au fichier devient effective à la prochaine réinitialisation du système. Vous pouvez revoir ce fichier pour les raisons suivantes :


Attention – Attention –

N'utilisez pas le fichier GRUB menu.lst pour modifier des entrées Solaris Live Upgrade. De telles modifications feraient échouer Solaris Live Upgrade.


Bien que le fichier menu.lst soit utilisable pour personnaliser le comportement de l'initialisation comme une initialisation avec le débogueur de noyau, la meilleure méthode de personnalisation consiste à employer la commande eeprom. Si vous utilisez le fichier menu.lst pour une personnalisation, les entrées du système d'exploitation Solaris pourraient très bien être modifiées lors de la mise à niveau des logiciels. Les modifications apportées au fichier pourraient ensuite être perdues.

Pour plus d'informations sur l'utilisation de la commande eeprom, reportez-vous à la rubrique How to Set Solaris Boot Parameters by Using the eeprom Command du System Administration Guide: Basic Administration.


Exemple 4–2 Fichier Menu.lst

Voici un exemple de fichier menu.lst :


default 0
timeout 10
title Solaris
  root (hd0,0,a)
  kernel /platform/i86pc/multiboot -B console=ttya
  module /platform/i86pc/boot_archive
title Solaris failsafe
  root (hd0,0,a)
  kernel /boot/multiboot -B console=ttya -s
  module /boot/x86.miniroot.safe
#----- second_disk - ADDED BY LIVE UPGRADE - DO NOT EDIT  -----
title second_disk
  root (hd0,1,a)
  kernel /platform/i86pc/multiboot
  module /platform/i86pc/boot_archive
title second_disk failsafe
  root (hd0,1,a)
  kernel /boot/multiboot kernel/unix -s
  module /boot/x86.miniroot-safe
#----- second_disk -------------- END LIVE UPGRADE ------------
title Windows
  root (hd0,0)
  chainloader -1
default

Indique l'élément à initialiser en cas d'expiration du délai d'attente. Pour modifier la valeur par défaut, vous pouvez spécifier un autre élément de la liste en changeant le numéro. Le comptage débute par zéro pour le premier titre. Par exemple, modifiez la valeur par défaut pour 2 pour que l'initialisation se fasse automatiquement sur l'environnement d'initialisation second_disk.

timeout

Indique le temps d'attente exprimé en secondes accordé à un utilisateur pour faire une entrée avant que l'initialisation ne s'enclenche sur l'entrée par défaut. Si aucun délai d'attente n'est spécifié, vous devez sélectionner une entrée.

title OS name

Indique le nom du système d'exploitation.

  • S'il s'agit d'un environnement d'initialisation Solaris Live Upgrade, OS name est le nom que vous avez donné au nouvel environnement d'initialisation lorsqu'il a été créé. Dans l'exemple précédent, l'environnement d'initialisation Solaris Live Upgrade se nomme second_disk.

  • S'il s'agit d'une archive d'initialisation de secours (failsafe), cette dernière est utilisée pour la récupération du système lorsque le système d'exploitation principal est endommagé. Dans l'exemple précédent, Solaris failsafe et second_disk failsafe sont les archives d'initialisation de récupération des systèmes d'exploitation Solaris et second_disk.

root (hd0,0,a)

Indique le disque, la partition et la tranche pour le chargement des fichiers. GRUB détecte automatiquement le type de système de fichiers.

kernel /platform/i86pc/multiboot

Indique le programme de multiboot. La commande kernel doit toujours être suivie par le programme multiboot. La chaîne qui vient après multiboot est transmise au système d'exploitation Solaris sans interprétation.

Pour obtenir une description complète des systèmes avec plusieurs systèmes d'exploitation, reportez-vous à la rubrique How Multiple Operating Systems Are Supported in the GRUB Boot Environment du System Administration Guide: Basic Administration.


Recherche du fichier menu.lst pour modifier le menu GRUB

Vous devez toujours employer la commande bootadm pour rechercher le fichier menu.lst du menu GRUB. La sous-commande list-menu trouve le menu GRUB actif. Le fichier menu.lst répertorie tous les systèmes d'exploitation installés sur un système. La liste des systèmes d'exploitation qui apparaissent dans le menu GRUB est établie à partir du contenu de ce fichier. Pour modifier ce fichier, reportez-vous à la rubrique x86 : Recherche du fichier menu.lst du menu GRUB (Tâches).

x86 : Recherche du fichier menu.lst du menu GRUB (Tâches)

Démarrage la version Solaris 10 1/06, le menu GRUB peut être mis à jour. Par exemple, vous pouvez vouloir modifier le temps par défaut indiquant la rapidité avec laquelle l'initialisation du système d'exploitation par défaut va s'effectuer. Ou, vous pouvez souhaiter ajouter un autre système d'exploitation au menu GRUB.

D'une manière générale, le chemin d'accès au fichier menu.lst du menu GRUB actif est /boot/grub/menu.lst. Dans certains cas, le fichier GRUB menu.lst réside ailleurs. Par exemple, dans un système utilisant Solaris Live Upgrade, le fichier GRUB menu.lst peut se trouver dans un environnement d'initialisation n'étant pas celui actuellement exécuté. Ou si vous avez mis à niveau un système contenant une partition d'initialisation x86, le fichier menu.lst peut résider dans le répertoire /stubboot. Seul le fichier GRUB menu.lst actif sert à l'initialisation du système. Pour modifier le menu GRUB qui s'affiche à l'initialisation du système, vous devez modifier le fichier GRUB menu.lst actif. Toute modification d'un autre fichier GRUB menu.lst est sans effet sur le menu affiché à l'initialisation du système. Pour déterminer l'emplacement du fichier GRUB menu.lst actif, servez-vous de la commande bootadm. La sous-commande list-menu affiche l'emplacement du menu GRUB actif. Les procédures suivantes déterminent l'emplacement du fichier menu.lst du menu GRUB.

Pour plus d'informations sur la commande bootadm, reportez-vous à la page man bootadm(1M).

ProcedureRecherche du fichier menu.lst du menu GRUB

Dans la procédure suivante, le système contient deux systèmes d'exploitation : Solaris et un environnement d'initialisation Solaris Live Upgrade, second_disk. Le système d'exploitation Solaris a été initialisé et contient la menu GRUB.

Étapes
  1. Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour de plus amples informations sur les rôles, reportez-vous à la rubrique Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Pour rechercher le fichier menu.lst, tapez :


    # /sbin/bootadm list-menu
    

    L'emplacement et le contenu du fichier sont affichés.


    The location for the active GRUB menu is: /boot/grub/menu.lst
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe

ProcedureRecherche du fichier menu.lst du menu GRUB lorsque le fichier menu.lst actif se trouve dans un autre environnement d'initialisation

Dans la procédure suivante, le système contient deux systèmes d'exploitation : Solaris et un environnement d'initialisation Solaris Live Upgrade, second_disk . Dans cette situation, le fichier menu.lst n'existe pas dans l'environnement d'initialisation exécuté actuellement. L'environnement d'initialisation second_disk a été initialisé. L'environnement d'initialisation Solaris contient le menu GRUB. L'environnement d'initialisation Solaris n'est pas monté.

Étapes
  1. Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour de plus amples informations sur les rôles, reportez-vous à la rubrique Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Pour rechercher le fichier menu.lst, tapez :


    # /sbin/bootadm list-menu
    

    L'emplacement et le contenu du fichier sont affichés.


    The location for the active GRUB menu is: /dev/dsk/device_name(not mounted)
    The filesystem type of the menu device is <ufs>
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe
  3. Puisque le système de fichiers contenant le fichier menu.lst n'est pas monté, vous devez monter le système de fichiers. Spécifiez le système de fichier UFS et le nom du périphérique.


    # /usr/sbin/mount -F ufs /dev/dsk/device_name /mnt
    

    device_name indique l'emplacement du système de fichiers racine (/) sur le périphérique de disque de l'environnement d'initialisation que vous voulez monter. Le nom du périphérique est entré sous la forme /dev/dsk/cw txdy sz. Par exemple :


    # /usr/sbin/mount -F ufs /dev/dsk/c0t1d0s0 /mnt
    

    Pour accéder au menu GRUB, utilisez le chemin d'accès /mnt/boot/grub/menu.lst

  4. Démontez le système de fichiers


    # /usr/sbin/umount /mnt
    

    Remarque –

    Si vous montez un environnement d'initialisation ou un système de fichiers d'un environnement d'initialisation, vérifiez que le ou les systèmes de fichiers sont démontés après utilisation. Si vous ne démontez pas les systèmes de fichiers, de futures opérations Solaris Live Upgrade sur cet environnement d'initialisation risqueraient d'échouer.


ProcedureRecherche du fichier menu.lst du menu GRUB lorsqu'un environnement d'initialisation Solaris Live Upgrade est monté

Dans la procédure suivante, le système contient deux systèmes d'exploitation : Solaris et un environnement d'initialisation Solaris Live Upgrade, second_disk . L'environnement d'initialisation second_disk a été initialisé. L'environnement d'initialisation Solaris contient le menu GRUB. L'environnement d'initialisation Solaris est monté à /.alt.Solaris.

Étapes
  1. Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour de plus amples informations sur les rôles, reportez-vous à la rubrique Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Pour rechercher le fichier menu.lst, tapez :


    # /sbin/bootadm list-menu
    

    L'emplacement et le contenu du fichier sont affichés.


    The location for the active GRUB menu is: /.alt.Solaris/boot/grub/menu.lst
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe

    Puisque l'environnement d'initialisation contenant le menu GRUB est déjà monté, vous pouvez alors accéder au fichier menu.lst à /.alt.Solaris/boot/grub/menu.lst.

ProcedureRecherche du fichier menu.lst du menu GRUB lorsque votre système possède une partition d'initialisation x86

Dans la procédure suivante, le système contient deux systèmes d'exploitation : Solaris et un environnement d'initialisation Solaris Live Upgrade, second_disk. L'environnement d'initialisation second_disk a été initialisé. Votre système a été mis à niveau et il reste une partition d'initialisation x86. La partition d'initialisation a été montée à /stubboot et contient le menu GRUB. Pour plus d'information sur les partitions d'initialisation x86, reportez-vous à la rubrique x86 : Recommandations pour le partitionnement.

Étapes
  1. Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour de plus amples informations sur les rôles, reportez-vous à la rubrique Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Pour rechercher le fichier menu.lst, tapez :


    # /sbin/bootadm list-menu
    

    L'emplacement et le contenu du fichier sont affichés.


    The location for the active GRUB menu is: /stubboot/boot/grub/menu.lst
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe

    Vous pouvez accéder au fichier menu.lst à /stubboot/boot/grub/menu.lst.