centos7のkernelアップデート手順のメモです。
#現在のkernelバージョン確認
uname -a
出力例
Linux XXXXXX 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
#既存パッケージの確認
rpm -qa | grep "^kernel"
出力例
kernel-headers-3.10.0-229.el7.x86_64
kernel-3.10.0-229.el7.x86_64
kernel-tools-3.10.0-229.el7.x86_64
kernel-devel-3.10.0-229.el7.x86_64
kernel-tools-libs-3.10.0-229.el7.x86_64
#ELRepoの導入
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
以下のメッセージが表示された場合はcurlのバージョンアップが必要です。
curl: (35) Peer reports incompatible or unsupported protocol version.
yum update curl
#最新版kernelのインストール
#最新安定版をインストールする場合
$ yum --enablerepo=elrepo-kernel install kernel-ml
#長期サポート版をインストールする場合
$ yum --enablerepo=elrepo-kernel install kernel-lt
#デフォルト起動kernelの変更
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
出力例
0 : CentOS Linux (4.15.2-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-693.17.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-c03640e46bfe44989f5aa1a4dcd56b35) 7 (Core)
0番目のkernelで起動するように変更する場合
grub2-set-default 0
#関連パッケージのインストール
yum --enablerepo=elrepo-kernel swap kernel-tools-libs kernel-ml-tools-libs
yum --enablerepo=elrepo-kernel install kernel-ml-tools
順番通りインストールしないとコンフリクトが発生して失敗します。
最新版kernelインストールで長期サポート版を選択した場合はmlをltに変えて実行してください。
#参考サイト
https://hackers-high.com/linux/update-centos-kernel/
https://kou.bz/blog/centos7-kernel-verup.html