GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Ändern Sie den Standardkernel (mit altem Kernel booten) in CentOS/RHEL/OEL 5 und 6

Der folgende Beitrag zeigt das Verfahren zum Booten von CentOS/RHEL/OEL 5- und 6-Systemen in verschiedene installierte Kernel.

Das Betriebssystem CentOS/RHEL/OEL 5 und 6 verwendet GRUB als Standard-Bootloader. Wenn Sie einen Kernel mit den Anwendungen rpm, up2date oder yum installieren, erstellt das Kernelpaket einen Eintrag in der Bootloader-Konfigurationsdatei für diesen neuen Kernel. Allerdings konfiguriert rpm den neuen Kernel nicht so, dass er bootet, wie es der Standardkernel, up2date und yum tun. Sie müssen dies manuell tun, wenn Sie einen neuen Kernel mit RPM installieren, und die Bootloader-Konfigurationsdatei nach der Installation eines neuen Kernels mit u2date oder yum überprüfen, um sicherzustellen, dass die Konfiguration korrekt ist.

Wenn Sie zuvor bereits verschiedene Kernel installiert haben und mit anderen als den in der GRUB-Konfigurationsdatei standardmäßig eingestellten booten möchten, müssen Sie den Standard-Kernel ändern, mit dem gebootet werden soll.

Um den Standard-Boot-Kernel in CentOS/RHEL/OEL 5 &6 zu ändern, führen Sie die folgenden Schritte aus:

1. Bearbeiten Sie die Datei /boot/grub/grub.conf mit einem Texteditor.

Die GRUB-Konfigurationsdatei beginnt mit dem Standard , Zeitüberschreitung , Splashimage und Hiddenmenu-Anweisungen , sollte es wie im folgenden Beispiel aussehen:

# vi /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/vg_luisol6-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/xvda
default=0
timeout=50
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Oracle Linux Server Unbreakable Enterprise Kernel (2.6.39-400.294.6.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.39-400.294.6.el6uek.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-2.6.39-400.294.6.el6uek.x86_64.img
title Oracle Linux Server Unbreakable Enterprise Kernel (3.8.13-118.19.2.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-3.8.13-118.19.2.el6uek.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-3.8.13-118.19.2.el6uek.x86_64.img
title Oracle Linux Server Unbreakable Enterprise Kernel (4.1.12-61.1.14.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-4.1.12-61.1.14.el6uek.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-4.1.12-61.1.14.el6uek.x86_64.img
title Oracle Linux Server Red Hat Compatible Kernel (2.6.32-642.6.1.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-642.6.1.el6.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-642.6.1.el6.x86_64.img

Die Direktive „default ” (im Beispiel rot markiert) gibt den Kernel-Eintrag an, den GRUB standardmäßig booten soll.

GRUB zählt die Kernel-Einträge in der Konfigurationsdatei beginnend bei 0. Die Direktive „default=0 “ bedeutet, dass GRUB standardmäßig den ersten Kernel-Eintrag bootet, es sei denn, Sie überschreiben diese Aktion.

2. Ändern Sie den Wert von „default“ auf den Wert des gewünschten standardmäßig zu bootenden Kernels, der einem der installierten Kernel entspricht. Setzen Sie den Wert von „0“ auf den gewünschten Wert, der dem Standard-Kernel entspricht, mit dem Sie booten müssen.

Im obigen Beispiel gibt es 3/5-zeilige Strophen, die sich jeweils auf einen installierten Kernel beziehen. Diese Zeilen beginnen immer mit einem Titeleintrag, nach dem die zugehörigen root-, kernel- und initrd-Direktiven immer eingerückt sein sollten. Stellen Sie sicher, dass jede Strophe mit einem Titel beginnt, der eine Versionsnummer (in Klammern) enthält, die mit der Versionsnummer im Kernel /vmlinuz-[version_number] übereinstimmt Zeile derselben Strophe.

Das Beispiel enthält 4 verschiedene installierte Kernel (das Beispiel stammt vom OEL 6-System):

title Oracle Linux Server Unbreakable Enterprise Kernel (2.6.39-400.294.6.el6uek.x86_64) = 0
title Oracle Linux Server Unbreakable Enterprise Kernel (3.8.13-118.19.2.el6uek.x86_64) = 1
title Oracle Linux Server Unbreakable Enterprise Kernel (4.1.12-61.1.14.el6uek.x86_64) = 2
title Oracle Linux Server Red Hat Compatible Kernel (2.6.32-642.6.1.el6.x86_64) = 3

Ändern zu:

default=1" to boot with UEK3 kernel version "3.8.13-118.19.2.el6uek.x86_64"
"default=2" to boot with UEK4 kernel version "4.1.12-61.1.14.el6uek.x86_64"
"default=3" to boot with RHCK (Red Hat Compatible Kernel) version "2.6.32-642.6.1.el6.x86_64"

3. Starten Sie das System neu.

# shutdown -r now

4. Sobald der Server wieder hochgefahren ist und läuft, vergewissern Sie sich, dass der standardmäßig gebootete Kernel der richtige ist, indem Sie den Befehl „uname“ ausführen:

# vi /boot/grub/grub.conf
...
default=2
timeout=50
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Oracle Linux Server Unbreakable Enterprise Kernel (2.6.39-400.294.6.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.39-400.294.6.el6uek.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-2.6.39-400.294.6.el6uek.x86_64.img
title Oracle Linux Server Unbreakable Enterprise Kernel (3.8.13-118.19.2.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-3.8.13-118.19.2.el6uek.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-3.8.13-118.19.2.el6uek.x86_64.img
title Oracle Linux Server Unbreakable Enterprise Kernel (4.1.12-61.1.14.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-4.1.12-61.1.14.el6uek.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-4.1.12-61.1.14.el6uek.x86_64.img
title Oracle Linux Server Red Hat Compatible Kernel (2.6.32-642.6.1.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-642.6.1.el6.x86_64 ro root=/dev/mapper/vg_luisol6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=la-latin1 rd_LVM_LV=vg_luisol6/lv_root rd_LVM_LV=vg_luisol6/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-642.6.1.el6.x86_64.img
# uname -r
4.1.12-61.1.14.el6uek.x86_64


Cent OS
  1. So generieren Sie initramfs und vmlinuz für den Rescue-Kernel mit dem aktuellen Kernel in CentOS/RHEL 7 neu

  2. So ändern Sie Kernel-Semaphor-Limits in CentOS/RHEL

  3. Reparieren von Dateisystemproblemen beim Booten in CentOS/RHEL 7 und 8

  4. So debuggen Sie den systemd-Startvorgang in CentOS/RHEL 7 und 8

  5. So ändern Sie den Standardport von Apache unter RHEL/CentOS 7

So starten Sie den Dienst beim Booten mit RHEL 8 / CentOS 8 Linux

So installieren Sie Lighttpd mit PHP FPM und MariaDB unter CentOS 7 / RHEL 7

So booten Sie in CentOS 8 / RHEL 8 in den Einzelbenutzermodus

So ändern Sie den aktuellen/Standard-Runlevel in CentOS 8 / RHEL 8

Wie konfiguriere ich Centos 8, um mit der alten Kernel-Version zu booten?

So ändern Sie den Standardkernel (Booten vom alten Kernel) in CentOS/RHEL 8