私は、セキュリティ パッチが必要な Amazon Linux (バージョンは不明) を実行する EC2 インスタンスをいくつか管理しています。
多くのソフトウェアは適切にパッチが適用されましたが、カーネルのアップグレードが行き詰まっています。希望どおりに最新のカーネル バージョンを使用することができません。何をすればよいのでしょうか?
- を実行して、Amazon リポジトリから最新のカーネル バージョンを取得します
yum update
。システムは、予想どおりに最新のカーネル バージョンを取得し、これ以上更新するものがないことを報告します。 - 最新のカーネル バージョンを入手した後、EC2 コンソールで [再起動] をクリックして EC2 を再起動しました。EC2 が再起動した後、コマンドを使用して EC2 のカーネル バージョンを確認しました
uname -r
。予想どおり最新のカーネル バージョンではなく、同じカーネル バージョンがまだ使用されていることが報告されています。
私たちが見逃したポイントは何でしょうか? 助けてください。
答え1
あなたはamazon-linux-エクストラカーネルをアップグレードするためのリポジトリ
まず、このコマンドを実行して利用可能なすべてのカーネルバージョンを取得します
sudo amazon-linux-extras |grep kernel
次のような応答が表示されます
_ kernel-5.4 available [ =stable ]
55 kernel-5.10=latest enabled [ =stable ]
62 kernel-5.15 available [ =stable ]
有効とマークされているカーネルバージョンは、マシンにインストールされているものです
新しいバージョン(例えばkernel-5.15)にアップグレードするには、このコマンドを実行するだけです。sudo amazon-linux-extras install kernel-5.15 -y
ここで、サーバーを再起動する必要があります。sudo reboot
再起動後、コマンドを実行して、uname -r
新しいバージョンが正常にインストールされていることを確認します。
詳細については、こちらを参照してくださいリンク
答え2
カーネルライブパッチは、カーネルバージョン4.14.165-131.185
以降の Amazon Linux 2 で利用できます。カーネルバージョンを確認するには、次のコマンドを実行します。
[root@actsupport ~]# yum list kernel
すでにサポートされているカーネル バージョンがある場合は、この手順をスキップしてください。サポートされているカーネル バージョンがない場合は、次のコマンドを実行してカーネルを最新バージョンに更新し、インスタンスを再起動します。
[root@actsupport ~]# sudo yum install -y kernel
[root@actsupport ~]# reboot
カーネルライブパッチ用の yum プラグインをインストールします。
[root@actsupport ~]# yum install -y yum-plugin-kernel-livepatch
カーネルライブパッチ用の yum プラグインを有効にします。
[root@actsupport ~]# yum kernel-livepatch enable -y
このコマンドは、構成されたリポジトリからカーネル ライブ パッチ RPM の最新バージョンもインストールします。
カーネルライブパッチ用の yum プラグインが正常にインストールされたことを確認するには、次のコマンドを実行します。
[root@actsupport ~]# rpm -qa | grep kernel-livepatch
カーネル ライブ パッチを有効にすると、空のカーネル ライブ パッチ RPM が自動的に適用されます。カーネル ライブ パッチが正常に有効化された場合、このコマンドは初期の空のカーネル ライブ パッチ RPM を含むリストを返します。
kpatch サービスを更新して起動します。このサービスは、初期化時または起動時にすべてのカーネル ライブ パッチを読み込みます。
[root@actsupport ~]# yum update kpatch-runtime
[root@actsupport ~]# systemctl enable kpatch.service
カーネルライブパッチが含まれる Amazon Linux 2 カーネルライブパッチリポジトリを設定します。
[root@actsupport ~]# amazon-linux-extras enable livepatch