Установка драйвера сетевой карты Debian
Доброго времени суток! Решил поставить Debian 7. В процессе установки потребовались драйвера для сетевой карты, так как под рукой не было, то пропустил. Материнская плата: foxconn h67a-s После в консоли ввожу
Вижу на eth0 свою сетевую карту, но по dhcp адрес не получает. Прочитал, что лучше установить драйвер вручную. Сделал
make clean modules make install depmode -a modprobe r8169
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) Subsystem: Foxconn International, Inc. Device 0dcb 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) Kernel driver in use: pcieport 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) Subsystem: Foxconn International, Inc. Device 0dcb 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: ehci_hcd 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: snd_hda_intel 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) Kernel driver in use: pcieport 00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5) Kernel driver in use: pcieport 00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 (rev b5) Kernel driver in use: pcieport 00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5) Kernel driver in use: pcieport 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: ehci_hcd 00:1f.0 ISA bridge: Intel Corporation H67 Express Chipset Family LPC Controller (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb 00:1f.2 IDE interface: Intel Corporation 6 Series/C200 Series Chipset Family 4 port SATA IDE Controller (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: ata_piix 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: i801_smbus 00:1f.5 IDE interface: Intel Corporation 6 Series/C200 Series Chipset Family 2 port SATA IDE Controller (rev 05) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: ata_piix 01:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 430] (rev a1) Subsystem: Micro-Star International Co., Ltd. Device 8093 Kernel driver in use: nouveau 01:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev a1) Subsystem: Micro-Star International Co., Ltd. Device 8093 Kernel driver in use: snd_hda_intel 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06) Subsystem: Foxconn International, Inc. Device 0dcb Kernel driver in use: r8169 04:00.0 PCI bridge: Integrated Technology Express, Inc. Device 8892 (rev 10) 06:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 03) Subsystem: Foxconn International, Inc. Device 0dcd Kernel driver in use: xhci_hcd
Adding 1910780k swap on /dev/sdb5. Priority:-1 extents:1 across:1910780k [ 9.558750] EXT4-fs (sdb1): re-mounted. Opts: (null) [ 9.910670] EXT4-fs (sdb1): re-mounted. Opts: errors=remount-ro [ 10.028872] loop: module loaded [ 10.742186] EXT4-fs (sdb2): mounted filesystem with ordered data mode. Opts: (null) [ 11.495145] RPC: Registered named UNIX socket transport module. [ 11.495148] RPC: Registered udp transport module. [ 11.495151] RPC: Registered tcp transport module. [ 11.495153] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 11.527378] FS-Cache: Loaded [ 11.566231] FS-Cache: Netfs 'nfs' registered for caching [ 11.577051] Installing knfsd (copyright (C) 1996 okir@monad.swb.de). [ 12.095939] r8169 0000:03:00.0: firmware: agent aborted loading rtl_nic/rtl8168e-2.fw (not found?) [ 12.096004] r8169 0000:03:00.0: eth0: unable to load firmware patch rtl_nic/rtl8168e-2.fw (-2) [ 12.121430] r8169 0000:03:00.0: eth0: link down [ 12.121439] r8169 0000:03:00.0: eth0: link down [ 12.122190] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 201.501129] r8169 0000:03:00.0: eth0: link up [ 201.501843] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 212.448809] eth0: no IPv6 routers present
Заметки Sandbox
Симптомы: время от времени пропадает сеть.
В логах множество записей типа:
Feb 3 01:27:22 vds1 kernel: [ 6489.198269] r8169 0000:04:00.0: eth0: link up
проблема в драйвере сетевой платы r8169, и данная проблема проявляется даже на самом последнем ядре linux. Для решения проблемы необходимо стянуть и установить драйвер с сайта realtek для r8168, то есть сделать даунгрейд драйвера, а оригинальный заблеклистить, чтоб его не подхватывало ядро.
Для начала проверим действительно ли у нас стоит драйвер r8169:
Если в ответ увидели что то подобное:
Теперь необходимо проверить есть ли смысл нам делать даунгрейд, то есть заведется или не заведется сетевая…
apt-get install -y pciutils lspci | grep Ethernet
Если в ответ увидите что то на подобии:
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
То драйвер r8168 будет работать с вашей сетевой и можем продолжать дальше…
Поставим пакет включающий все необходимые компоненты (компиляторы и прочие инструменты) для сборки всего необходимого:
aptitude install build-essential linux-headers-`uname -r`
Дальше скачаем исходники драйвера:
cd /usr/src http://blogovo.in.ua/uploads/r8168-8.032.00.tar.bz2 tar xjf r8168-8.032.00.tar.bz2
Дальше мы перестроим зависимости ядра:
Драйвер r8169 необходимо занести в блеклист, чтоб ядро его не прогружало. Если у вас несколько сетевых, тогда заносить в блеклист не нужно.
echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf
Добавляем драйвер r8169 в initrd:
echo "r8168" >> /etc/initramfs-tools/modules
Теперь нужно пересобрать initrd:
update-initramfs -v -u -k `uname -r`
Ну вот и все. Новый драйвер будет загружен после перезагрузки. Перезагружаемся:
Проверить загрузился ли драйвер можно командой:
lsmod | grep 8168 r8168 226837 0
P.S. если надумаете обновлять ядро, драйвер необходимо пересобрать!
P.P.S С офсайта realtek можно стянуть свежий драйвер который устанавливается скриптом. Но не всегда работает.
Debian User Forums
I’ve been googling around trying to get to the bottom of this weird problem for a while now.
I have a server running Debian Squeeze (2.6.32-5-486) which has a Realtek LAN chipset built into the motherboard:
lspci . 00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10) .
filename: /lib/modules/2.6.32-5-486/kernel/drivers/net/r8169.ko firmware: rtl_nic/rtl8168d-2.fw firmware: rtl_nic/rtl8168d-1.fw version: 2.3LK-NAPI license: GPL description: RealTek RTL-8169 Gigabit Ethernet driver author: Realtek and the Linux r8169 crew srcversion: 078266A670E32D8C5FA333A alias: pci:v00000001d00008168sv*sd00002410bc*sc*i* alias: pci:v00001737d00001032sv*sd00000024bc*sc*i* alias: pci:v000016ECd00000116sv*sd*bc*sc*i* alias: pci:v00001259d0000C107sv*sd*bc*sc*i* alias: pci:v00001186d00004300sv*sd*bc*sc*i* alias: pci:v000010ECd00008169sv*sd*bc*sc*i* alias: pci:v000010ECd00008168sv*sd*bc*sc*i* alias: pci:v000010ECd00008167sv*sd*bc*sc*i* alias: pci:v000010ECd00008136sv*sd*bc*sc*i* alias: pci:v000010ECd00008129sv*sd*bc*sc*i* depends: mii vermagic: 2.6.32-5-486 mod_unload modversions 486 parm: rx_copybreak:Copy breakpoint for copy-only-tiny-frames (int) parm: use_dac:Enable PCI DAC. Unsafe on 32 bit PCI slot. (int) parm: debug:Debug verbosity level (0=none, . 16=all) (int)
This works pretty well.. The server was up for around 145 days, then suddenly dropped off the network. The link had gone down! The machine still had an IP, but couldn’t ping anything on the network. Rebooting the machine solved the problem, but then it failed after a mere 12 hours. I discovered I could get it back by ‘rmmod’ing the driver and ‘modprobe’ing it back.
I then installed this driver from Realtek’s site:
filename: /lib/modules/2.6.32-5-486/kernel/drivers/net/r8169.ko version: 6.013.00-NAPI license: GPL description: RealTek RTL-8169 Gigabit Ethernet driver author: Realtek and the Linux r8169 crew srcversion: E4F620EFDC400F50E5C22A5 alias: pci:v000010ECd00008169sv*sd*bc*sc*i* alias: pci:v000010ECd00008167sv*sd*bc*sc*i* depends: vermagic: 2.6.32-5-486 mod_unload modversions 486 parm: speed:force phy operation. Deprecated by ethtool (8). (array of int) parm: duplex:force phy operation. Deprecated by ethtool (8). (array of int) parm: autoneg:force phy operation. Deprecated by ethtool (8). (array of int) parm: rx_copybreak:Copy breakpoint for copy-only-tiny-frames (int) parm: use_dac:Enable PCI DAC. Unsafe on 32 bit PCI slot. (int) parm: debug:Debug verbosity level (0=none, . 16=all) (int)
However this appears to suffer from the same unpredictable problem.
question 1: Is this a known issue with a workaround?
question 2: How can I get the original Debian driver back? I’d rather use it if the Realtek one hasn’t fixed the problem
Q2 is answered: I did a ‘apt-get upgrade’ — which seemed to ‘update’ the kernel to 2.6.32-5-486, which has brought back the original driver
Debian User Forums
I have a dual boot system and one is Debian 6.0, i use it extensively but i don’t know anything about internet or networks. I just use it to do programming assignments from a book i study and internet is something i just want to use but i don’t care to know network configuration in detail. The problem is, my internet (or maybe signal from Ethernet cable) oscillates. I am online for 15 secs and than for next 5 secs i am offline. Of course there is no steady pattern, just randomly online offline. I searched the forums for a solution but i couldn’t find anything. I think this is a completely weird problem. On other OS installed, you know which it is, Ethernet connection works fine. And i am able to use my internet in Debian too with some regular disconnections. But i am really curious about what could be the reason for this.
kedaha Posts: 3521 Joined: 2008-05-24 12:26 Has thanked: 33 times Been thanked: 76 times
Re: Weird Oscillating Internet Problem
#2 Post by kedaha » 2012-09-30 11:14
# cat /var/log/messages.1 | tail
$ vrms No non-free or contrib packages installed on debian! rms would be proud.
Re: Weird Oscillating Internet Problem
#3 Post by Meguli » 2012-09-30 12:29
Hello and thanks for helping. As I said I don’t know any administrating methods for network configuration, but here outputs for commands you mentioned.
$dmesg |grep -i error does not return any error massage or any other output.
I think there are no different outputs when i am connected or disconnected. But i know i am disconnected, i can’t load pages for a brief moment regulary and i regularly
go offline and online on my Empathy IM.