AmazonLinuxで古いリポジトリを使用したい
システムソリューション部の指原です。
検証に伴い、AWSのEC2上でAmazonLinuxのインスタンスで少し古いバージョンのkernelをインストールした際のメモです。
概要
OS:Amazon Linux AMI release 2016.09
旧kernel:kernel-4.4.35-33.55.amzn1.x86_64
入れたいkernel:kernel-4.4.51-40.67.amzn1.x86_64
困ったこと
yum installでバージョンを指定することでインストールできるかと思ったんですが、うまくいきませんでした。
[root@ip-xx-xx-xx-xx ~]# yum install kernel-4.4.51-40.67.amzn1.x86_64 Loaded plugins: priorities, update-motd, upgrade-helper No package kernel-4.4.51-40.67.amzn1.x86_64 available. Error: Nothing to do
理由はAmazonのリポジトリで最新のものを参照していたため、該当のパッケージが存在していなかったためです。
ちなみに2017/8/2時点の最新のkernelは4.9.38-16.33.amzn1.x86_64になっています。
対応方法
yumの設定にreleaseverという設定項目があり、そこで参照するリポジトリを決定しています。
デフォルトだとlatest(最新)となっているため、そこを変更してやります。
[root@ip-xx-xx-xx-xx ~]# vim /etc/yum.conf releasever=latest ↓ releasever=2016.09
その上で先ほど失敗したyumを実施します。
[root@ip-xx-xx-xx-xx ~]# yum install kernel-4.4.51-40.67.amzn1.x86_64 . . . Installed: kernel.x86_64 0:4.4.51-40.67.amzn1 Complete!
サーバを再起動後、kernelの情報を確認します。
[root@ip-xx-xx-xx-xx ~]# uname -r 4.4.51-40.67.amzn1.x86_64
問題無く指定のkernelがインストールされました。
ちなみに上記方法はAWSのドキュメントにも記載されています。
※記載されている対応は該当行をコメントアウト
このように古いバージョンのものをインストールしたい場合は柔軟に対応できるようになっています。
以上です。
この記事がお役に立てば【 いいね 】のご協力をお願いいたします!