GNU/Linux >> Linux の 問題 >  >> Linux

CentOS/RHEL 8 でデフォルトのカーネル (古いカーネルから起動) を変更する方法

システムに複数のカーネルがインストールされている場合、ダウングレードまたはその他の要件が発生した場合に、特定のカーネルから起動できます。このブログ投稿の目的のために、CentOS/RHEL 8 で古いカーネルに戻す方法を見てみましょう。先に進む前に、現在のデフォルトのカーネル システムが起動されていることを確認する方法を理解しましょう。

現在のデフォルト カーネルを表示

1. grubby を使用して、システムに現在設定されているデフォルトのカーネル レベルを表示できます。 . grubby は、さまざまなアーキテクチャ固有のブートローダーの構成ファイルに関する情報を更新および表示するためのコマンド ライン ツールです。主に、新しいカーネルをインストールし、現在のブート環境に関する情報を検索する必要があるスクリプトから使用するように設計されています。

# grubby --default-kernel
/boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64

2. システムにインストールされたすべてのカーネルには、それに関連付けられたインデックスがあります。カーネル インデックスを表示するには:

# grubby --default-index
0

3. 以下を使用して、利用可能なカーネルを一覧表示します。

# ls -l /boot/vmlinuz-*
-rwxr-xr-x. 1 root root 7872864 Apr 26  2019 /boot/vmlinuz-0-rescue-d026443091424a74948f9f62d2adb9b5
-rwxr-xr-x. 1 root root 7868768 Jun 19  2019 /boot/vmlinuz-0-rescue-ec2b9a54dc859388d7bc348e87df5332
-rwxr-xr-x. 1 root root 8106848 Nov 11 13:07 /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64
-rwxr-xr-x. 1 root root 7876960 Sep 15  2019 /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
-rwxr-xr-x. 1 root root 7881056 Jul 26  2019 /boot/vmlinuz-4.18.0-80.7.2.el8_0.x86_64

4. 特定のカーネル バージョンの詳細情報を取得するには、grubby を再度使用できます。

# grubby --info /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
index=1
kernel="/boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64"
args="ro console=ttyS0,115200n8 console=tty0 net.ifnames=0 rd.blacklist=nouveau crashkernel=auto $tuned_params"
root="UUID=58013e4a-11c0-4195-8fd8-e4b33e5b17d6"
initrd="/boot/initramfs-4.18.0-80.11.2.el8_0.x86_64.img $tuned_initrd"
title="Red Hat Enterprise Linux (4.18.0-80.11.2.el8_0.x86_64) 8.0 (Ootpa)"
id="ec2b9a54dc859388d7bc348e87df5332-4.18.0-80.11.2.el8_0.x86_64"

上記の出力からわかるように、システムで使用可能なカーネルのカーネル インデックスを簡単に見つけることができます。最新のカーネルのインデックスは常に 0 です。

どのカーネルから起動したか、および起動可能なカーネルのリストがわかったので、先に進んで古いカーネルから起動できます。古いカーネルから起動するには 2 つの方法があります:

<オール>
  • カーネル ファイル名の使用
  • カーネル インデックスの使用
  • 方法 1 – カーネル ファイル名を使用して古いカーネルから起動する

    1. システムで利用可能なカーネル ファイル名を一覧表示します。

    # ls -l /boot/vmlinuz-*
    -rwxr-xr-x. 1 root root 7872864 Apr 26  2019 /boot/vmlinuz-0-rescue-d026443091424a74948f9f62d2adb9b5
    -rwxr-xr-x. 1 root root 7868768 Jun 19  2019 /boot/vmlinuz-0-rescue-ec2b9a54dc859388d7bc348e87df5332
    -rwxr-xr-x. 1 root root 8106848 Nov 11 13:07 /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64
    -rwxr-xr-x. 1 root root 7876960 Sep 15  2019 /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
    -rwxr-xr-x. 1 root root 7881056 Jul 26  2019 /boot/vmlinuz-4.18.0-80.7.2.el8_0.x86_64

    2. ブートするカーネルを決定したら、grubby コマンドを使用します。

    # grubby --set-default [kernel-filename]

    例:

    # grubby --set-default boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64

    方法 2 – カーネル インデックスを使用して古いカーネルから起動する

    1. システムで利用可能なカーネル ファイル名を一覧表示します。

    # ls -l /boot/vmlinuz-*
    -rwxr-xr-x. 1 root root 7872864 Apr 26  2019 /boot/vmlinuz-0-rescue-d026443091424a74948f9f62d2adb9b5
    -rwxr-xr-x. 1 root root 7868768 Jun 19  2019 /boot/vmlinuz-0-rescue-ec2b9a54dc859388d7bc348e87df5332
    -rwxr-xr-x. 1 root root 8106848 Nov 11 13:07 /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64
    -rwxr-xr-x. 1 root root 7876960 Sep 15  2019 /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
    -rwxr-xr-x. 1 root root 7881056 Jul 26  2019 /boot/vmlinuz-4.18.0-80.7.2.el8_0.x86_64

    2. 上記のカーネルのいずれかのインデックスを表示するには:

    # grubby --info [kernel-filename] | grep index

    例:

    # grubby --info /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 | grep index
    index=1

    3. ブート元のカーネルのインデックスがわかったので、次のコマンドを使用します:

    # grubby --set-default-index=[kernel-entry-index]

    例:

    # grubby --set-default-index=1


    Linux
    1. デフォルトのカーネルを変更 (古いカーネルで起動) – CentOS/RHEL/OEL 7

    2. CentOS / RHEL :ファイルシステムの UUID を変更する方法

    3. CentOS/RHEL でファイルシステムのラベルを変更する方法

    1. CentOS / RHEL :LVM ボリュームの作成時刻を確認する方法

    2. prefixdevname を使用して CentOS/RHEL 8 のインターフェイス名を変更する方法

    3. tmux 内からデフォルトの新しいウィンドウ ディレクトリを変更する方法

    1. Linux –忘れたルートパスワードを変更する方法は?

    2. CentOS / RHEL 7 :マシン ID を変更する方法

    3. CentOS/RHEL/OEL 5 および 6 でデフォルトのカーネルを変更 (古いカーネルで起動)