« 八重洲 わんぱく ごぼう天コロッケそば | トップページ | 四ッ谷 政吉そば いか天そば 【閉店->再開】 »

2013年7月20日 (土)

【備忘録】CentOS Realtek製NIC用のドライバーインストール

ネットワークインタフェースがRealtek製のとき、CentOSを自動でインストールすると間違ったバージョンのドライバを適用されてしまうことがある。このままでも動作しないことはないのだが、ある日突然通信パケットがドロップを始めてしまうことがあるらしい。なのでできれば事前に正しいバージョンに入れ替えておいたほうがよい。

正:r8168
誤:r8169

0.確認

lspciでこのように表示されたら要確認、そうでなければ本編の作業不要。
>lspci | grep RTL
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)

案の定、間違ったドライバが適用されていた。
>/sbin/lsmod | grep r81
r8169 60023 0 <---- r8168が必要
mii 5376 1 r8169

幸いのところ私のマシンではパケットのドロップは発生していなかった。
>ifconfig -a | grep dropped
RX packets:166919 errors:0 dropped:0 overruns:0 frame:0
TX packets:295254 errors:0 dropped:0 overruns:0 carrier:0
RX packets:87697 errors:0 dropped:0 overruns:0 frame:0
TX packets:87697 errors:0 dropped:0 overruns:0 carrier:0

1.レポジトリ取得 -- ELRepo を有効にする
Root権限で実行

CentOS6の場合
>rpm -Uvh http://elrepo.org/elrepo-release-6-4.el6.elrepo.noarch.rpm

2.ドライバパッケージをインストール
>yum install kmod-r8168

確認
>rpm -ql kmod-r8168
/etc/depmod.d/kmod-r8168.conf
/etc/modprobe.d/blacklist-r8169.conf
/lib/modules/2.6.32-71.el6.x86_64
/lib/modules/2.6.32-71.el6.x86_64/extra
/lib/modules/2.6.32-71.el6.x86_64/extra/r8168
/lib/modules/2.6.32-71.el6.x86_64/extra/r8168/r8168.ko
/usr/share/doc/kmod-r8168-8.036.00
/usr/share/doc/kmod-r8168-8.036.00/GPL-v2.0.txt
/usr/share/doc/kmod-r8168-8.036.00/README

>cat /etc/depmod.d/kmod-r8168.conf
override r8168 * weak-updates/r8168

ブラックリストに r8169が登録されるので
次回から起動時に自動で読まれない
>cat /etc/modprobe.d/blacklist-r8169.conf
blacklist r8169

3.再起動

4.確認
> /sbin/lsmod | grep r81
r8168 253025 0

以上

|

« 八重洲 わんぱく ごぼう天コロッケそば | トップページ | 四ッ谷 政吉そば いか天そば 【閉店->再開】 »

パソコン・インターネット」カテゴリの記事

コメント

この記事へのコメントは終了しました。