GNU/Linux >> Znalost Linux >  >> Linux

Chyba eth0 NIC Link is Down v Linuxu

Tato chyba se mi v minulých letech stala několikrát. Síť náhle zamrzne a po několika sekundách se vrátí, jindy zase zamrzne a jediný způsob, jak vzdáleně pracovat na serveru, je restartovat box. Toto je přesná chybová zpráva, kterou dostávám:kernel:e1000e:eth0 NIC Link is Down

Při kontrole protokolů to vypadalo takto na /var/log/messages

May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down

Po restartování serveru se konektivita vrátila do normálu, ale nejedná se o trvalou opravu pro produkční servery. Toto jsou 4 nejlepší řešení, která jsem kdy v této situaci použil k opravě chyby „eth0 NIC Link is Down“ na serverech Linux.

Jednou z prvních věcí, které je třeba udělat, je zkontrolovat, zda se při spouštění příkazu ifconfig nezvýší počet chyb, což je způsob, jak zjistit možné problémy s ovladačem nic, pokud ne, může to souviset s hardwarovým problémem (Nic, kabel, port).

Jak mohu vyřešit tuto chybu e1000e:eth0 NIC Link is Down?

Existuje několik důvodů, proč k tomu může dojít. Viděl jsem, že se to děje na serverech CentOS i Ubuntu a vždy to souvisí s:

1. Špatné ethernetové kabely

Toto je jedna z nejjednodušších oprav, stačí vyměnit ethernetové kabely a začít znovu sledovat. Tento druh problému mohou někdy způsobit špatné ethernetové kabely. Výměna starých síťových vodičů za nové trvá přibližně 1 minutu.

2. Selhání síťových ovladačů e1000e

Ovladač e1000e někdy selže na CentOS Linux, ujistěte se, že máte nejnovější ovladače e1000e nic. Ovladače můžete aktualizovat podle následujících kroků:

  • Pro Ubuntu – vyzkoušejte tento praktický skript.
  • Pro CentOS/RHEL: Vyzkoušejte tohoto průvodce od Intelu, můžete také vyzkoušet tento malý skript od Ioflood.com, který funguje na CentOS 6 a 7:
# Copyright 2014 Input Output Flood LLC
# IOFLOOD.com -- We Love Servers
# This script may be freely distributed so long as this copyright notice remains intact
#
# this is a pre-requisite for our nifty nic upgrade script
 yum -y install pciutils
 
 # update this network driver for the appropriate RHEL release and the appropriate driver (e1000e and igb supported)
 NIC=`lspci -nv | egrep "e1000e$|igb$" | sed 's/\tKernel driver in use: //g' | sed 's/\tKernel modules: //g' | uniq`
 if grep -q -i "release 5" /etc/redhat-release
 then
   RPM="http://elrepo.org/elrepo-release-5-5.el5.elrepo.noarch.rpm"
 elif grep -q -i "release 6" /etc/redhat-release
 then
   RPM="http://elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm"
   if [[ "$NIC" == "e1000e" ]]
   then
     grubby --update-kernel=ALL --args="pcie_aspm=off e1000e.IntMode=1,1 e1000e.InterruptThrottleRate=10000,10000 acpi=ht"
   fi
 elif grep -q -i "release 7" /etc/redhat-release
 then
   RPM="http://elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm"
   if [[ "$NIC" == "e1000e" ]]
   then
     grubby --update-kernel=ALL --args="pcie_aspm=off e1000e.IntMode=1,1 e1000e.InterruptThrottleRate=10000,10000 acpi=ht"
   fi
 fi
 if [[ -n "$RPM" && -n "$NIC" ]] 
 then
   rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
   rpm -Uvh $RPM
   yum -y install kmod-$NIC
 fi

3. Selhání NIC

Vyměňte NIC za novou. Pokud je NIC součástí základní desky, budete muset provést úplnou výměnu základní desky, což může trvat až 30 minut, než bude váš web mimo provoz.

4. Selhání portu přepínače

Poslední věcí, kterou můžete zkusit, je změnit port přepínače, ke kterému je tento server připojen.

Poslední návrh:

Příkaz ethtool vám může pomoci ujistit se, že vaše síťová nastavení pro Linux jsou stejná jako ta, která jste nakonfigurovali na vašem přepínači, může to být další důvod k tomuto druhu síťových chyb.

5. Aktualizujte svůj BIOS a povolte režim ASPM

Pokud je zakázán, může být příčinou tohoto problému režim ASPM. Kromě toho se ujistěte, že používáte nejnovější verzi systému BIOS, a pokud ne, aktualizujte.

6. Zakázat řízení toku

Povolení řízení toku způsobilo tuto podivnou síťovou chybu několikrát. Zkuste to deaktivovat a sledujte své protokoly, abyste zjistili, zda to bylo příčinou problému:

ethtool -A eth0 rx off tx off

Nyní zkontrolujte, zda to bylo použito nebo ne:

[[email protected]:~]ethtool -a eth0

Pause parameters for eth0:

Autonegotiate:  on
RX:             off
TX:             off

Pokud vidíte vypnuto, je řízení toku zakázáno.

7. Vyměňte základní desku za integrovanou síťovou kartu a CPU

Jakmile jsem viděl, že E3-1230v2 má neustálé problémy, jediným způsobem, jak to opravit, bylo migrovat disky na nový E3-1231v3 s jinou základní deskou a integrovaným nickem.

Co o tobě? Podařilo se vám opravit chybu e1000e:eth0 NIC Link is Down?

Chyba eth0 NIC Link is Down na Linuxu byla naposledy upravena:5. ledna 2020 Estebanem Borgesem
Linux
  1. Můj web DotNetNuke nefunguje

  2. cp:vynechání adresáře – chyba při kopírování adresáře v Linuxu

  3. Chyba ldconfig:není symbolický odkaz

  1. Linux – Kernel IP Forwarding?

  2. Android Studio error 13=oprávnění v linuxu odepřeno

  3. Chyba Samba 4.9.0 ./configure lmdb

  1. Linux – vytvoření duplikátu cesty v Unixu?

  2. Makro IS_ERR() v Linuxu

  3. Chyba na Vagrant Up na Linuxu