Ryzen Linux Install Battle 、RyzenとGeForceの環境にCentOS 7をインストールする方法

Windows Server サーバー
スポンサーリンク

Ryzen Install Battle 、RyzenとGeForceの環境にCentOS7をインストールする方法

Ryzenのリリースにより、AMDが見事不死鳥のように蘇った事実が未だに信じられない、元AMDユーザーの僕です。

メインマシンをMacProからRyzen 7 1700を使った自作マシンに買えてから、そのパフォーマンスの高さに驚きながら、日々を過ごしています。

こうなると、サーバーについてもIntelではなく、Ryzenシリーズを使って構築してみたいなと考え、普段から利用しているCentOS 7をインストールしてみることにしました。

LiveCDからブートすると、レスキューモードに

Ryzenでサーバを組み上げ、CentOS 7のLiveCDを使い、サーバを再起動したところ、下記のようなエラーメッセージが表示され、レスキューモードで立ち上がってしまいます。

dracut-initqueue[612]: Warning: Could not boot.
dracut-initqueue[612]: Warning: /dev/root does not exist
	Starting Dracut Emergency shell...
Warning: /dev/root does not exist

こちらについては、明確な回答が最後まで得られませんでした・・・ 最新CPUと最新チップセットを利用していることが何か足枷になっているのか、と思いnoacpiを追加して、先に進めることにしました。

それでもキチンとブートしなかったので、journalctlを叩いて原因を探ってみたところ、下記のエラーが発生していることが確認できました。

Ignoring BGRT: failed to map image memory
tsc: Fast TSC calibration failed

1つめについては、搭載しているGeForce GT 730がどうもうまく認識されていないのが原因でしたので、グラフィックドライバを読み込まないように、するためGRUBのbootオプションを変更します。

2つめについては、時刻同期のためにTSCを参照しようとした物の失敗したことが原因で上がっています。こちらについては、まだCentOS 7がRyzenシリーズには正式に対応していないため、仕方のない物としてひとまず無視します。

結果、最終的にGRUBのbootオプションに、noapicとnomodesetを追加して、ブートする事でインストーラを立ち上げることが出来ました。

Ryzen CentOS

手順としては、LiveCDを起動して「Install CentOS 7」を選択した状態で、Tabを押してbootオプション編集画面を表示します。(eキーを押して編集画面を表示する場合もあります)

Ryzen CentOS

Ryzen CentOS

すると、bootオプションの一番後ろに、quietと記載されていますので、これを削除して「noacpi nomodeset」を追記してEnterキーを押します。(前項でeキーを押して編集画面を表示している場合は、Ctrl+Xキーを押します)

これでインストーラは立ち上がりますので、インストール作業をすすめます。

Kernelのアップデート

セットアップが完了したら、下記コマンドを実行してまずはインストールされているパッケージの更新を行います。

sudo yum update

次に、下記コマンドを実行してリポジトリを追加します。

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

最後に下記コマンドで、最新のKernelをインストールします。

sudo yum update
sudo yum install --enablerepo=elrepo-kernel kernel-ml.x86_64 kernel-ml-devel.x86_64 kernel-ml-headers.x86_64 kernel-ml-tools.x86_64 kernel-ml-tools-libs.x86_64 --skip-broken

最新Kernelのインストールが完了したら、下記コマンドを実行してgrub.confを編集の下準備をします。

sudo awk -F\' '$1=="menuentry " {print $2}' /etc/grub2-efi.cfg

実行結果として下記のような物が得られるはずです

CentOS Linux (4.13.4-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-693.2.2.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-2b6dd9342aac45f8b40ae0f7f4e97277) 7 (Core)

一番上にLinux Kernel 4.13.4-1が導入されていることが確認できますので、下記コマンドを実行してgrub.confを編集します。

sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

これであとは再起動するだけで、次回以降Kernel 4.13.4-1で立ち上がってくるようになります。

あとはもしGUIで利用するのであれば、GeForceのドライバをインストールすれば良いですし、CLIで使うのであればこれで作業は完了です。

まとめ

Ryzenになっても余裕余裕と高をくくっていましたが、実際にやってみると予想だにしないところでどはまりしていました・・・

Ryzen自体は非常に優秀ですので、はやいことCentOS 7でもRyzenの正式サポートを謳ってほしいところですね。

Source: ELRepo | Tech Beans

コメント