GNU/Linux >> Tutoriels Linux >  >> Linux

CentOS / RHEL 5 :Comment reconstruire l'image initiale du disque RAM

Lors de l'ajout de nouveau matériel à un système, ou après avoir modifié les fichiers de configuration qui peuvent être utilisés plus tôt dans le processus de démarrage, ou lors de la modification des options sur un module du noyau, il peut être nécessaire de reconstruire le disque virtuel initial (également appelé initrd ou initramfs) pour inclure les modules de noyau, les fichiers et les directives de configuration appropriés. Dans les exemples ci-dessous, vous verrez l'utilisation de $(uname -r), qui est un moyen de passer la version actuelle du noyau dans une commande sans la saisir.

Procédure

1. Commençons par sauvegarder le Ramdisk initial d'origine :

# cp /boot/initrd-`uname -r`.img /boot/initrd-`uname -r`.img.bak

2. Création d'un nouveau disque virtuel initial (après avoir ajouté les nouveaux modules dans /etc/modprobe.conf ou /etc/modules.conf pour le noyau 2.4) :

# mkinitrd -f /boot/initrd-`uname -r`-new.img `uname -r`

Vous pouvez voir qu'un nouveau fichier de disque virtuel initial initrd-[kernel-version]-new.img a été créé dans le répertoire /boot. Paramètres mkinitrd (veuillez consulter man mkinitrd pour plus de détails) :

# mkinitrd --help
usage: mkinitrd [--version] [--help] [-v] [-f] [--preload [module]]
       [--force-ide-probe] [--force-scsi-probe | --omit-scsi-modules]
       [--image-version] [--force-raid-probe | --omit-raid-modules]
       [--with=[module]] [--force-lvm-probe | --omit-lvm-modules]
       [--builtin=module] [--omit-dmraid] [--net-dev=interface]
       [--fstab=fstab] [--nocompress] [initrd-image] [kernel-version]

Les paramètres les plus utilisés sont :

-f Permet à mkinitrd d'écraser un fichier image existant.
–preload=module – Chargez le module module dans l'image initiale du disque virtuel. Le module est chargé avant tous les modules SCSI spécifiés dans /etc/modprobe.conf. Cette option peut être utilisée autant de fois que nécessaire.
–with=module – Charger le module modules dans l'image ramdisk initiale. Le module est chargé après tous les modules SCSI spécifiés dans /etc/modprobe.conf. Cette option peut être utilisée autant de fois que nécessaire.

Si vous avez choisi un nouveau nom pour votre fichier Ramdisk initial, vous devez ajouter une nouvelle entrée dans /etc/grub.conf pour pouvoir l'utiliser :

title Red Hat Enterprise Linux 5 (2.6.32-200.13.1.el5)
root (hd0,0)
kernel /vmlinuz-2.6.32-200.13.1.el5 ro root=LABEL=/ 
initrd /initrd-2.6.32-200.13.1.el5.img

Après cela, vous pourrez choisir l'entrée "New initrd" dans votre menu Grub lors du démarrage.

Travailler avec les sauvegardes

Comme mentionné précédemment, il est recommandé de faire une sauvegarde de l'initrd précédent en cas de problème avec le nouveau. Si nécessaire, il est possible de créer une entrée distincte dans /boot/grub/grub.conf pour l'image initiale du disque virtuel de sauvegarde, afin de choisir facilement l'ancienne version au démarrage sans avoir à restaurer la sauvegarde. Cet exemple de configuration permet de sélectionner la nouvelle ou l'ancienne image du disque virtuel initial dans le menu grub :

title Red Hat Enterprise Linux 5 (2.6.32-200.13.1.el5)
root (hd0,0)
kernel /vmlinuz-2.6.32-200.13.1.el5 ro root=LABEL=/ 
initrd /initrd-2.6.32-200.13.1.el5.img
title Red Hat Enterprise Linux 5 w/ old initrd (2.6.32-200.13.1.el5)
root (hd0,0)
kernel /vmlinuz-2.6.32-200.13.1.el5 ro root=LABEL=/ 
initrd /initrd-2.6.32-200.13.1.el5.img.bak

Alternativement, vous pouvez entrer en mode édition dans grub si vous devez choisir l'ancien initrd et que vous n'avez pas fait d'entrée séparée dans grub.conf avant de redémarrer. Pour ce faire :

Si grub est sécurisé avec un mot de passe, appuyez sur p et entrez le mot de passe
Utilisez les touches fléchées pour mettre en surbrillance l'entrée du noyau que vous souhaitez démarrer
Appuyez sur e pour modifier
Sélectionnez la ligne initrd et appuyez à nouveau sur e
Modifiez le chemin de l'initrd vers la copie de sauvegarde que vous avez faite (comme /initrd-2.6.32-200.13.1.el5.img.bak)
Appuyez sur Entrée pour enregistrer temporairement les modifications vous avez fait
Appuyez sur b pour démarrer

Remarque :Cette procédure n'apporte en fait aucune modification persistante. Au prochain démarrage, le système continuera à utiliser la configuration originale de grub.conf à moins qu'elle ne soit mise à jour.


Linux
  1. Comment reconstruire le "initramfs" avec Multipath dans CentOS/RHEL 6 et 7

  2. CentOS / RHEL 6 :Comment configurer kdump

  3. CentOS / RHEL 7 :Comment configurer kdump

  4. CentOS / RHEL :Comment collecter sosreport

  5. CentOS / RHEL 5 :Comment configurer kdump

Comment monter/démonter une image ISO sur CentOS 8/Rhel 8 Linux

Comment configurer SSH sur CentOS et RHEL

Comment initialiser la configuration du serveur CentOS 7

CentOS / RHEL :Comment supprimer un volume LVM

CentOS / RHEL 6 :Comment trouver mon niveau d'exécution actuel ?

CentOS / RHEL 6 :Comment désactiver le service telnet