2. Migrer vers LVM 1.0.8 avec une partition racine en LVM et initrd

La procédure est relativement simple si elle est suivie avec attention. Il est recommandé de faire une bonne sauvegarde avec une disquette de démarrage de secours, juste au cas où.

L'utilisation « normale » de LVM sur le système de fichiers racine est d'avoir une seule partition non LVM appelée /boot qui contient le noyau et une image disque RAM d'initialisation, nécessaire pour démarrer le système. Le système que j'ai mis à jour était comme suit :

# df
Sys. de fich.         Blocs-1k    Occupé    Dispo. Cap% Monté sur
/dev/rootvg/root        253871     93384    147380  39% /
/dev/hda1                17534     12944      3685  78% /boot
/dev/rootvg/home       4128448      4568   3914168   0% /home
/dev/rootvg/usr        1032088    332716    646944  34% /usr
/dev/rootvg/var         253871     31760    209004  13% /var

/boot contient l'ancien noyau et l'image disque RAM d'initialisation ainsi que les fichiers d'amorçage de Lilo et les lignes suivantes dans /etc/lilo.conf :

# ls /boot
System.map                 lost+found              vmlinux-2.2.16lvm
map                        module-info             boot.0300
boot.b                     os2_d.b                 chain.b
initrd.gz
# tail /etc/lilo.conf
image=/boot/vmlinux-2.2.16lvm
        label=lvm08
        read-only
        root=/dev/rootvg/root
        initrd=/boot/initrd.gz
        append="ramdisk_size=8192"

  1. Compiler le noyau LVM et les modules

    Suivez les instructions détaillées dans les Chapitre 5, Obtenir LVM et Section 2, « Construire le module du noyau pour LVM 1 » pour obtenir et compiler les composants noyau nécessaires pour LVM.

  2. Compiler les utilitaires LVM

    Suivez les instructions détaillées dans le Section 2, « Construire le module du noyau pour LVM 1 » pour compiler et installer les utilitaires nécessaires pour LVM.

    Installer les nouveaux utilitaires. Une fois cela effectué, vous ne pourrez plus faire de manipulations sur LVM car les utilitaires ne sont pas compatibles avec le noyau démarré actuellement.

  3. Renommer le fichier initrd.gz existant

    Cela permet qu'il ne soit pas écrasé par le nouveau fichier.

    # mv /boot/initrd.gz /boot/initrd08.gz
    
  4. Modifier /etc/lilo.conf

    Faites pointer l'entrée de démarrage existante vers le fichier renommé. Vous devrez redémarrer en utilisant cela si quelque chose se passe mal. L'entrée modifiée devrait ressembler à cela :

    image=/boot/vmlinux-2.2.16lvm
            label=lvm08
            read-only
            root=/dev/rootvg/root
            initrd=/boot/initrd08.gz
            append="ramdisk_size=8192"
    
  5. Lancer lvmcreate_initrd pour créer une nouvelle image disque RAM d'initialisation

    # lvmcreate_initrd 2.4.9
    

    N'oubliez pas de spécifier la nouvelle version du noyau afin qu'il prenne les bons modules.

  6. Ajouter une nouvelle entrée dans /etc/lilo.conf

    Cette nouvelle entrée sert à démarrer avec le nouveau noyau et le nouvel initrd.

    image=/boot/vmlinux-2.4.9lvm
    label=lvm10
    read-only
    root=/dev/rootvg/root
    initrd=/boot/initrd.gz
    append="ramdisk_size=8192"
    
  7. Relancer lilo

    Cela installe le nouveau bloc d'amorçage

    # /sbin/lilo
    
  8. Redémarrer la machine

    Lorsque vous avez l'écran de sélection de Lilo, choisissez la nouvelle entrée (lvm10 dans cet exemple) et le système devrait démarrer avec un Linux utilisant la nouvelle version de LVM.

    Si le nouveau noyau ne démarre pas, alors démarrez avec l'ancien et essayez de corriger le problème. Cela peut provenir du noyau qui n'aurait pas tous les pilotes de périphériques correctement compilés ou bien qu'ils ne sont pas disponibles dans initrd. Souvenez-vous que tous les pilotes (excepté pour LVM) qui sont nécessaires pour accéder au périphérique racine doivent être compilés en dur dans le noyau et non en tant que modules.

    Si vous avez besoin d'effectuer des manipulations avec LVM lorsque vous avez redémarré sur l'ancienne version, il vous faut juste recompiler les anciens utilitaires et les installer avec :

    # make install
    

    Si vous faites cela, n'oubliez pas de réinstaller la nouvelle version lorsque vous redémarrerez avec le nouveau LVM.

Une fois satisfait de la nouvelle installation, pensez à modifier l'entrée « default= » dans le fichier lilo.conf pour mettre par défaut le nouveau noyau.

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:27