CentOS 7でkernel 5.0 が出たので上げてみた。


CentOS 7で稼働中のサーバーをkernel 5.0にアップデートしてみました。
使用したリポジトリはelrepo-kernel.repoです。
update前の準備のelrepoについては昔の記事に書いてます。

update前に現状確認

# uname -r
4.20.13-1.el7.elrepo.x86_64

リポジトリを念の為きれいにして

# yum clean all
読み込んだプラグイン:fastestmirror, langpacks
リポジトリーを清掃しています: base elrepo elrepo-kernel epel extras mariadb
...: nginx remi-php72 remi-safe skype-stable updates zabbix
...: zabbix-non-supported
Cleaning up list of fastest mirrors
Other repos take up 22 M of disk space (use --verbose for details)

改めて確認

# yum check-update
kernel-ml.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
python-perf.x86_64 5.0.0-1.el7.elrepo elrepo-kernel

elrepo-kernel.repoで確かにkernel 5.0が来ております。
それではupdateします。

# yum -y update
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: ftp.tsukuba.wide.ad.jp
* elrepo: ftp.ne.jp
* elrepo-kernel: ftp.ne.jp
* epel: ftp.iij.ad.jp
* extras: ftp.tsukuba.wide.ad.jp
* remi-php72: ftp.riken.jp
* remi-safe: ftp.riken.jp
* updates: ftp.tsukuba.wide.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ kernel-ml.x86_64 0:5.0.0-1.el7.elrepo を インストール
---> パッケージ kernel-ml-devel.x86_64 0:5.0.0-1.el7.elrepo を インストール
---> パッケージ kernel-ml-headers.x86_64 0:4.20.13-1.el7.elrepo を 更新
---> パッケージ kernel-ml-headers.x86_64 0:5.0.0-1.el7.elrepo を アップデート
---> パッケージ kernel-ml-tools.x86_64 0:4.20.13-1.el7.elrepo を 更新
---> パッケージ kernel-ml-tools.x86_64 0:5.0.0-1.el7.elrepo を アップデート
---> パッケージ kernel-ml-tools-libs.x86_64 0:4.20.13-1.el7.elrepo を 更新
---> パッケージ kernel-ml-tools-libs.x86_64 0:5.0.0-1.el7.elrepo を アップデート
---> パッケージ python-perf.x86_64 0:4.20.13-1.el7.elrepo を 更新
---> パッケージ python-perf.x86_64 0:5.0.0-1.el7.elrepo を アップデート
--> 依存性解決を終了しました。
--> トランザクションの確認を実行しています。
---> パッケージ kernel-ml.x86_64 0:4.20.8-1.el7.elrepo を 削除
---> パッケージ kernel-ml-devel.x86_64 0:4.20.8-1.el7.elrepo を 削除
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
Package アーキテクチャー
バージョン リポジトリー 容量
================================================================================
インストール中:
kernel-ml x86_64 5.0.0-1.el7.elrepo elrepo-kernel 47 M
kernel-ml-devel x86_64 5.0.0-1.el7.elrepo elrepo-kernel 12 M
更新します:
kernel-ml-headers x86_64 5.0.0-1.el7.elrepo elrepo-kernel 1.3 M
kernel-ml-tools x86_64 5.0.0-1.el7.elrepo elrepo-kernel 180 k
kernel-ml-tools-libs x86_64 5.0.0-1.el7.elrepo elrepo-kernel 80 k
python-perf x86_64 5.0.0-1.el7.elrepo elrepo-kernel 504 k
削除中:
kernel-ml x86_64 4.20.8-1.el7.elrepo @elrepo-kernel 206 M
kernel-ml-devel x86_64 4.20.8-1.el7.elrepo @elrepo-kernel 46 M

トランザクションの要約
================================================================================
インストール 2 パッケージ
更新 4 パッケージ
削除 2 パッケージ

総ダウンロード容量: 61 M
Downloading packages:
No Presto metadata available for elrepo-kernel
(1/6): kernel-ml-devel-5.0.0-1.el7.elrepo.x86_64.rpm | 12 MB 00:00
(2/6): kernel-ml-headers-5.0.0-1.el7.elrepo.x86_64.rpm | 1.3 MB 00:00
(3/6): kernel-ml-tools-5.0.0-1.el7.elrepo.x86_64.rpm | 180 kB 00:00
(4/6): kernel-ml-tools-libs-5.0.0-1.el7.elrepo.x86_64.rpm | 80 kB 00:00
(5/6): python-perf-5.0.0-1.el7.elrepo.x86_64.rpm | 504 kB 00:00
(6/6): kernel-ml-5.0.0-1.el7.elrepo.x86_64.rpm | 47 MB 00:02
--------------------------------------------------------------------------------
合計 30 MB/s | 61 MB 00:02
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
更新します : kernel-ml-tools-libs-5.0.0-1.el7.elrepo.x86 1/12
更新します : kernel-ml-tools-5.0.0-1.el7.elrepo.x86_64 2/12
インストール中 : kernel-ml-devel-5.0.0-1.el7.elrepo.x86_64 3/12
更新します : kernel-ml-headers-5.0.0-1.el7.elrepo.x86_64 4/12
更新します : python-perf-5.0.0-1.el7.elrepo.x86_64 5/12
インストール中 : kernel-ml-5.0.0-1.el7.elrepo.x86_64 6/12
整理中 : kernel-ml-4.20.8-1.el7.elrepo.x86_64 7/12
整理中 : kernel-ml-headers-4.20.13-1.el7.elrepo.x86_ 8/12
整理中 : kernel-ml-devel-4.20.8-1.el7.elrepo.x86_64 9/12
整理中 : kernel-ml-tools-4.20.13-1.el7.elrepo.x86_64 10/12
整理中 : kernel-ml-tools-libs-4.20.13-1.el7.elrepo.x 11/12
整理中 : python-perf-4.20.13-1.el7.elrepo.x86_64 12/12
検証中 : kernel-ml-5.0.0-1.el7.elrepo.x86_64 1/12
検証中 : python-perf-5.0.0-1.el7.elrepo.x86_64 2/12
検証中 : kernel-ml-headers-5.0.0-1.el7.elrepo.x86_64 3/12
検証中 : kernel-ml-devel-5.0.0-1.el7.elrepo.x86_64 4/12
検証中 : kernel-ml-tools-5.0.0-1.el7.elrepo.x86_64 5/12
検証中 : kernel-ml-tools-libs-5.0.0-1.el7.elrepo.x86 6/12
検証中 : kernel-ml-tools-libs-4.20.13-1.el7.elrepo.x 7/12
検証中 : kernel-ml-devel-4.20.8-1.el7.elrepo.x86_64 8/12
検証中 : python-perf-4.20.13-1.el7.elrepo.x86_64 9/12
検証中 : kernel-ml-tools-4.20.13-1.el7.elrepo.x86_64 10/12
検証中 : kernel-ml-headers-4.20.13-1.el7.elrepo.x86_ 11/12
検証中 : kernel-ml-4.20.8-1.el7.elrepo.x86_64 12/12

削除しました:
kernel-ml.x86_64 0:4.20.8-1.el7.elrepo
kernel-ml-devel.x86_64 0:4.20.8-1.el7.elrepo

インストール:
kernel-ml.x86_64 0:5.0.0-1.el7.elrepo
kernel-ml-devel.x86_64 0:5.0.0-1.el7.elrepo

更新:
kernel-ml-headers.x86_64 0:5.0.0-1.el7.elrepo
kernel-ml-tools.x86_64 0:5.0.0-1.el7.elrepo
kernel-ml-tools-libs.x86_64 0:5.0.0-1.el7.elrepo
python-perf.x86_64 0:5.0.0-1.el7.elrepo

完了しました!

updateは問題なく成功
grubを修正します。

# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.0.0-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (4.20.13-1.el7.elrepo.x86_64) 7 (Core)
2 : CentOS Linux (4.20.12-1.el7.elrepo.x86_64) 7 (Core)
3 : CentOS Linux (4.20.11-1.el7.elrepo.x86_64) 7 (Core)
4 : CentOS Linux (4.20.10-1.el7.elrepo.x86_64) 7 (Core)
5 : CentOS Linux (0-rescue-4012dc7197c64ed79c6e5dadbbfcdddc) 7 (Core)

0番目がkernel 5.0ですね。
現在の設定を確認

# grub2-editenv list
saved_entry=CentOS Linux (4.20.13-1.el7.elrepo.x86_64) 7 (Core)

5系を指定

# grub2-set-default 0

確認

# grub2-editenv list
saved_entry=0

0番になっているのを確認

いよいよrebootです。

# reboot

神様に祈ること数分・・・
無事に起動してきましたのでログインして確認

# uname -r
5.0.0-1.el7.elrepo.x86_64

kernel 5.0で起動してきています!
他のサービスにも問題は無いようなので一安心
無時にCentOS 7をkernel 5.0にできました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です