tag:crieit.net,2005:https://crieit.net/tags/HPE/feed
「HPE」の記事 - Crieit
Crieitでタグ「HPE」に投稿された最近の記事
2020-12-21T17:14:56+09:00
https://crieit.net/tags/HPE/feed
tag:crieit.net,2005:PublicArticle/16307
2020-12-07T18:40:21+09:00
2020-12-21T17:14:56+09:00
https://crieit.net/posts/Linux-NIC
LinuxサーバにNICのドライバをインストールした話
<h1 id="作業背景"><a href="#%E4%BD%9C%E6%A5%AD%E8%83%8C%E6%99%AF">作業背景</a></h1>
<p><strong>昔、HPE製のタワー型サーバをキッティングした時の話</strong><br />
- 設計段階でNICがテキトーに選定された為、標準搭載のNICと、追加したNICがそれぞれ別の製造元だった。<br />
<del>誰がそんなテキトーしたのか?自分自身である。</del></p>
<ul>
<li>標準搭載されていたNICはBroadcom製 追加したNICはIntel製<br />
サーバにはIntel製NICのドライバが入っていなかった。</li>
</ul>
<h1 id="作業環境"><a href="#%E4%BD%9C%E6%A5%AD%E7%92%B0%E5%A2%83">作業環境</a></h1>
<ul>
<li>タワー型サーバ ML30Gen10</li>
<li>OS CentOS7.4</li>
</ul>
<h1 id="作業手順"><a href="#%E4%BD%9C%E6%A5%AD%E6%89%8B%E9%A0%86">作業手順</a></h1>
<p><strong>1.NICの製造元とコントローラを確認する</strong><br />
NICの情報を確認する手段はいくつかあるが、複数NICのインターフェース名も確認したかった為、ここではnmcliコマンドを使っている。</p>
<pre><code>$ nmcli
</code></pre>
<p>※作業当時のサーバにはそもそもインストールされていなかった為、確認していなかったが、インターフェースのドライバ情報(ドライバ名、バージョン)等はethtoolコマンドで確認できる。</p>
<pre><code>$ ethtool -i <インターフェース名>
</code></pre>
<p><strong>2.必要なパッケージをインストールする</strong></p>
<pre><code>$ sudo yum install -y wget #ドライバのダウンロードに使用
$ sudo yum install -y rpm-build #ダウンロードしたドライバのコンパイルに使用
$ sudo yum install -y kernel-devel #コンパイルする時に必要なヘッダファイル等をインストールする
</code></pre>
<p>kernel-develをインストールしたら、一度再起動する。</p>
<pre><code>$ sudo reboot
</code></pre>
<p><strong>3.ドライバをダウンロードする</strong></p>
<pre><code>$ mkdir /home/user/Downloads #ダウンロード先を用意する
$ cd /home/user/Downloads #ダウンロードフォルダに移動
$ wget https://sourceforge.net/projects/e1000/files/igb%20stable/5.3.5.36/igb-5.3.5.36.tar.gz #NICのベースドライバ
$ wget https://sourceforge.net/projects/e1000/files/e1000e%20stable/3.5.1/e1000e-3.5.1.tar.gz #当時最新のPCIe用のネットワークアダプタドライバ
</code></pre>
<p><strong>4.ダウンロードしたドライバをrpmパッケージにコンパイルする</strong></p>
<pre><code>$ rpmbuild -tb --clean igb-5.3.5.36.tar.gz
$ rpmbuild -tb --clean e1000e-3.5.1.tar.gz
</code></pre>
<p>rpmbuildは、設定を変更せずにコンパイルを実行すると、デフォルトで$HOME/rpmbuildディレクトリ以下を生成するので移動する。</p>
<pre><code>$ cd /home/user/rpmbuild/RPMS/x86_64
</code></pre>
<p><strong>5.ドライバをインストールする</strong></p>
<pre><code>$ rpm -ivh igb-5.3.5.36.x86_64.rpm
</code></pre>
<p><strong>6.ネットワークを再起動する</strong></p>
<pre><code>$ sudo systemctl restart network
</code></pre>
<p>ネットワークの再起動後、LANケーブルを挿してNICが認識されることを確認したら終了。</p>
Nata