最新のマザーボードを利用してPCを組み、CentOSをインストールしようとすると、ドライバが無くて困る事があります。
例えば、私は先日、ASRockのZ490M-ITX/acでPCを組んでCentOS7をインストールしましたが、Intelのe1000eの最新版ドライバやRealtekの8125 2.5GbE ControllerのNICのドライバが入っていなくて苦労しました。
ドライバをメーカー提供のソースコードからコンパイルするのも良いのですが、コンパイルでコケたり、ドライバのバージョンアップなどに追随する事を考えると、自動でアップグレードできるようにしたいですよね。
- WiFiが使えるのであれば、一旦WiFiでネットワークに接続する
- CentOSが対応している古いNICを一時的に増設する
- CentOSが対応しているUSBネットワークアダプタ(例えばこちら)で一時的に接続する
など、ネットワークが接続できる状態にして、ELRepoからドライバをインストールするのが便利です。
ELRepoとは
ELRepoとは、エンタープライズLinuxパッケージのためのRPMレポジトリです。
Enterprise Linux Repositoryの略だそうです。
Red Hat Enterprise Linux (RHEL)や、その派生ディストリビューション(Scientific Linux、CentOS等)に対応しています。
ELRepoは、RHEL、CentOS、Scientifc Linuxのコミュニティで活動されている5人のメンバーから成り立っているそうです。
- Alan Bartlett (aka burakkucat)
- Phil Perry (aka pperry)
- Stephen Tindall
- Dag Wieers
- Akemi Yagi (aka toracat)
Yagi Akemiさんという日本人の方も参加されていらっしゃいます。
利用手順
パブリックキーのインストール
まず、パブリックキーをインポートします。
$ sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
Secure Bootが有効になっているシステムにインストールする場合
Secure Bootが有効になっているシステムでELRepoのカーネルモジュールを使う場合には、ELRepoのSecure BootパブリックキーをMOK(Machine Owner Key)リストに追加しておく必要があります。
このやり方は、本家のSecureBootKeyを参照されると良いです。
ELRepoのインストール
RHEL8、CentOS8
$ sudo yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
RHEL7、Scientific Linux7、CentOS7
$ sudo yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
これだけだと、本家のサーバからインストールすることになり、ダウンロードに時間が掛かります。
ミラーを使えるように、以下のコマンドも実行しておきます。
$ sudo yum install yum-plugin-fastestmirror
RHEL6、Scientific Linux6、CentOS6
$ sudo yum install https://www.elrepo.org/elrepo-release-6.el6.elrepo.noarch.rpm
これだけだと、本家のサーバからインストールすることになり、ダウンロードに時間が掛かります。
ミラーを使えるように、以下のコマンドも実行しておきます。
$ sudo yum install yum-plugin-fastestmirror
対応ハードウェアドライバ一覧
どのようなハードウェアのドライバがレポジトリにあるのかは、本家WebサイトのPackageで確認できます。
ドライバのインストール
メインチャンネルであるelrepoでは、ディストリビューションで収録されているドライバとバッティングしないようにしているそうです。
レポジトリを利用する前に必ずyum updateをしましょう。
$ sudo yum update
そして、自分がインストールしたいドライバをインストールします。
例えば、Intelのe1000eであれば、
$ sudo yum install kmod-e1000e
Realtek8125 2.5GbE Controllerであれば、
$ sudo yum install kmod-r8125
当然ながら、事前に自分が使いたいNICの製品番号をマザーボードの説明書などを読んで確認しておいて下さい。
インストールされるパッケージやリポジトリの設定によっては、elrepo 以外のリポジトリを無効にする必要があるかもしれません。
$ sudo yum --disablerepo=\* --enablerepo=elrepo install kmod-nvidia