木. 8月 22nd, 2019

Iron Sling

Just another WordPress site

【再掲】Lanドライバ誤認識 - Realtek 8111E R8168 on Ubuntu –

2 min read

【2018/01/20】このページに関しては既にr8168-dkms_8.037.00-1_all.debを使用することができる様になっています。リンク先ページをご覧ください。
尚、Debian (sid) に関してはr8168-dkms_8.045.08-2_all.deb のダウンロードページをご覧ください。手法は双方とも同一です。sources.listを編集してsynaptic などでインストールします。strechではr8168-dkmsを使うようですが、我が家ではインストールしても切り替わることはありませんでした。

Ubuntuを12.04から12.10にアップグレードして、X周りでエラー続発。
クリーンインストールしてみても、異常動作に変わりない。

しかたないので、12.04に戻した。
Lanドライバを再インストールすることになった。
前回Lanドライバ誤認識で中途半端なエントリを作成してしまったので書き直し。

手順は大きく変わらない。
makefileの書き換えが必要なだけだ。
以下のmakefileは、Fedra系のOSを利用されている音宮志久さん – 音宮志久のプログラム日記 – R8168ドライバをkernel3.8で認識させる –のサイトに書かれていたもの。
Fedra系だと思われるが、dkmsは同じなのでUbuntuでも行けるはず。

ダウンロードし解凍したフォルダにあるsrcフォルダのmakefileを以下に書き換え。

CONFIG_DOWN_SPEED_100 = n
CONFIG_ASPM = y
obj-m := r8168.o
r8168-objs := r8168_n.o r8168_asf.o rtl_eeprom.o rtltool.o
EXTRA_CFLAGS += -DCONFIG_R8168_NAPI
EXTRA_CFLAGS += -DCONFIG_R8168_VLAN
ifeq ($(CONFIG_DOWN_SPEED_100), y)
EXTRA_CFLAGS += -DCONFIG_DOWN_SPEED_100
endif
ifeq ($(CONFIG_ASPM), y)
EXTRA_CFLAGS += -DCONFIG_ASPM
endif

ifeq ($(KERNELRELEASE),)
BASEDIR := /lib/modules/$(shell uname -r)
else
BASEDIR := /lib/modules/$(KERNELRELEASE)
endif

KERNELDIR ?= $(BASEDIR)/build
PWD :=$(shell pwd)
DRIVERDIR := $(shell find $(BASEDIR)/kernel/drivers/net -name realtek -type d)
ifeq ($(DRIVERDIR),)
DRIVERDIR := $(BASEDIR)/kernel/drivers/net
endif
RTKDIR := $(subst $(BASEDIR)/,,$(DRIVERDIR))

.PHONY: all
all: clean modules install

.PHONY:modules
modules:
$(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) modules

.PHONY:clean
clean:
$(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) clean

.PHONY:install
install:
$(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) INSTALL_MOD_DIR=$(RTKDIR) modules_install

書き換えたら、srcフォルダごと /usr/src フォルダにコピー。
以下のコマンドを実行。

~$ ~/r8168-8.029.00$ sudo dkms add -m r8168 -v 8.035.00
Creating symlink /var/lib/dkms/r8168/8.035.00/source ->
/usr/src/r8168-8.035.00

DKMS: add completed.

~$ ~/r8168-8.029.00$ sudo dkms build -m r8168 -v 8.035.00
Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area....
make KERNELRELEASE=3.2.0-23-generic-pae modules......
cleaning build area....

DKMS: build completed.

~$~/r8168-8.029.00$ sudo dkms install -m r8168 -v 8.035.00
r8168:
Running module version sanity check.

Good news! Module version 8.029.00-NAPI for r8168.ko
exactly matches what is already found in kernel 3.2.0-23-generic-pae.
DKMS will not replace this module.
You may override by specifying --force.

depmod.......

DKMS: install completed.

以上

131total visits,1visits today

1 thought on “【再掲】Lanドライバ誤認識 - Realtek 8111E R8168 on Ubuntu –

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Copyright © All rights reserved. | Newsphere by AF themes.