コグノスケ


link 未来から過去へ表示(*)  link 過去から未来へ表示

link もっと前
2009年5月23日 >>> 2009年5月23日
link もっと後

2009年5月23日

ファイルサーバのネットワークが使えないなんて

部屋のファイルサーバはIntel D945GCLF2というマザーボードです。ここにDebian GNU/Linux 5.0(Lenny) を入れ、カーネルだけLinux 2.6.28に入れ替えて使っています。

しかしこのボード、買った当初からどうにもネットワークが不安定で、通信中に突然リンクダウンしたり、NETDEV WATCHDOG: transmit timed outというOopsが出てNICごと撃沈します。

あまりに調子が悪くていい加減イライラしてきたので、解決に向けて調べることにしました。

原因判明

調べてみるとD945GCLF2のNICはRealtek RTL8168BというPCI Express接続(※)のギガビットイーサネットインタフェースです。

それに対して今使っているドライバは、Realtek RTL816「9」SというPCI接続のギガビットイーサネットのドライバです。つまり不調の原因はドライバが間違っていたせいだったのです。しかし間違ったドライバなのに中途半端に動いてしまうのでタチが悪いです。

なんで動いちゃうの?という疑問はさておき、正しいドライバ(RTL8111/8168シリーズ用のドライバ)はRealtekのサイトのこの辺からダウンロードできます。

トップページからの行き方は [上のメニューDownloads] - [左のメニューCommunications Network ICs] - [Network Interface Controllers] - [10/100/1000M Gigabit Ethernet] - [PCI Express] - [Software] - [LINUX driver for kernel 2.6.x and 2.4.x (Support x86 and x64) 8.012.00] です。長い。

ビルドの仕方やインストールの仕方はアーカイブを展開したときにできるreadmeファイルに詳しく書いてあります。下記に一例を示します。

RTL8111/8168用ドライバのビルド&インストール
# rmmod r8169

# cd /usr/src

# tar xjvf r8168-8.012.00.tar.bz2

# make clean
make -C src/ clean
make[1]: Entering directory `/usr/src/r8168-8.012.00/src'
rm -rf *.o *.ko *~ core* .dep* .*.d .*.cmd *.mod.c *.a *.s .*.flags .tmp_versions Module.symvers Modules.symvers Module.markers *.order
make[1]: Leaving directory `/usr/src/r8168-8.012.00/src'

# make modules
make -C src/ modules
make[1]: Entering directory `/usr/src/r8168-8.012.00/src'
make -C /lib/modules/2.6.28-r8168/build SUBDIRS=/usr/src/r8168-8.012.00/src modules
make[2]: Entering directory `/usr/src/linux-2.6.28-r8168'
  CC [M]  /usr/src/r8168-8.012.00/src/r8168_n.o
/usr/src/r8168-8.012.00/src/r8168_n.c:5076: warning: 'rtl8168_reinit_task' defined but not used
  CC [M]  /usr/src/r8168-8.012.00/src/r8168_asf.o
  LD [M]  /usr/src/r8168-8.012.00/src/r8168.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /usr/src/r8168-8.012.00/src/r8168.mod.o
  LD [M]  /usr/src/r8168-8.012.00/src/r8168.ko
make[2]: Leaving directory `/usr/src/linux-2.6.28-r8168'
strip --strip-debug r8168.ko
make[1]: Leaving directory `/usr/src/r8168-8.012.00/src'

# make install
make -C src/ install
make[1]: Entering directory `/usr/src/r8168-8.012.00/src'
install -m 744 -c r8168.ko /lib/modules/2.6.28-r8168/kernel/drivers/net/
make[1]: Leaving directory `/usr/src/r8168-8.012.00/src'

# depmod -a

# modprobe r8168

手順はRTL8169用のドライバを削除してから、RTL8111/8168用のドライバをインストールしているだけです。

(※)個人的にはギガビットイーサをPCI接続にして、PCI Expressを拡張スロットに出して欲しかったなあ…と思う。

編集者:すずき(2009/05/26 21:45)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



link もっと前
2009年5月23日 >>> 2009年5月23日
link もっと後

管理用メニュー

link 記事を新規作成

<2009>
<<<05>>>
-----12
3456789
10111213141516
17181920212223
24252627282930
31------

最近のコメント5件

  • link 20年6月19日
    すずきさん (04/06 22:54)
    「ディレクトリを予め作成しておけば良いです...」
  • link 20年6月19日
    斎藤さん (04/06 16:25)
    「「Preferencesというメニューか...」
  • link 21年3月13日
    すずきさん (03/05 15:13)
    「あー、このプログラムがまずいんですね。ご...」
  • link 21年3月13日
    emkさん (03/05 12:44)
    「キャストでvolatileを外してアクセ...」
  • link 24年1月24日
    すずきさん (02/19 18:37)
    「簡単にできる方法はPowerShellの...」

最近の記事3件

  • link 24年4月17日
    すずき (04/18 22:44)
    「[VSCodeとMarkdownとPlantUMLのローカルサーバー] 目次: LinuxVSCodeのPlantUML Ex...」
  • link 23年4月10日
    すずき (04/18 22:30)
    「[Linux - まとめリンク] 目次: Linuxカーネル、ドライバ関連。Linuxのstruct pageって何?Linu...」
  • link 20年2月22日
    すずき (04/17 02:22)
    「[Zephyr - まとめリンク] 目次: Zephyr導入、ブート周りHello! Zephyr OS!!Hello! Ze...」
link もっとみる

こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDFファイル RSS 1.0

最終更新: 04/18 22:44