LinuxForum.Fans
Тема

[Solved] Отвалилась сеть (Ethernet + WiFi)

Автор: andreil 14 сообщений 6035 просмотров
#315503

"Немного" обновил мир после добавления нескольких флагов. Пересобралось все KDE-окружение и многие программы (где-то версия новая появилась, где-то USE поменялся - сильно не заморачивался, просмотрел список и сказал "yes").
После ребута не захотело подгружать firmware для WiFi (да и модуль для видео не грузило, говорило, что nvidia.ko не является модулем или имеет неизвестный формат), попытался пересобрать ядро ("genkernel all && emerge linux-firmware nvidia-drivers").
После пересборки и ребута с видео все ОК, но сеть как не работала, так и не работает. С сетевыми интерфейсами непонятки - вместо eth0 стоит непонятный enp9s0. При загрузке пишет:

text
net.wlan0     | * Bringing up interface wlan0
net.wlan0     | *   ERROR: interface wlan0 does not exist
net.wlan0     | *   Ensure that you have loaded the correct kernel module for your hardware
net.wlan0     | * ERROR: net.wlan0 failed to start

ifconfig -a:

text
enp9s0: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 48:5b:39:37:eb:f6  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 0 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

&quot;lspci -k&quot;
text
00:00.0 Host bridge: NVIDIA Corporation MCP79 Host Bridge (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
00:00.1 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
00:03.0 ISA bridge: NVIDIA Corporation MCP79 LPC Bridge (rev b3)
        Subsystem: ASUSTeK Computer Inc. Device 8402
00:03.1 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
00:03.2 SMBus: NVIDIA Corporation MCP79 SMBus (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel modules: i2c-nforce2
00:03.3 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
00:03.5 Co-processor: NVIDIA Corporation MCP79 Co-processor (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: nvidia
        Kernel modules: nvidia
00:04.0 USB controller: NVIDIA Corporation MCP79 OHCI USB 1.1 Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: ohci_hcd
00:04.1 USB controller: NVIDIA Corporation MCP79 EHCI USB 2.0 Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: ehci_hcd
00:06.0 USB controller: NVIDIA Corporation MCP79 OHCI USB 1.1 Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: ohci_hcd
00:06.1 USB controller: NVIDIA Corporation MCP79 EHCI USB 2.0 Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: ehci_hcd
00:08.0 Audio device: NVIDIA Corporation MCP79 High Definition Audio (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 83ce
        Kernel driver in use: snd_hda_intel
00:09.0 PCI bridge: NVIDIA Corporation MCP79 PCI Bridge (rev b1)
00:0b.0 IDE interface: NVIDIA Corporation MCP79 SATA Controller (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: ahci
00:10.0 PCI bridge: NVIDIA Corporation MCP79 PCI Express Bridge (rev b1)
00:16.0 PCI bridge: NVIDIA Corporation MCP79 PCI Express Bridge (rev b1)
        Kernel driver in use: pcieport
00:18.0 PCI bridge: NVIDIA Corporation MCP79 PCI Express Bridge (rev b1)
        Kernel driver in use: pcieport
05:00.0 VGA compatible controller: NVIDIA Corporation ION VGA [GeForce 9400M] (rev b1)
        Subsystem: ASUSTeK Computer Inc. Device 8402
        Kernel driver in use: nvidia
        Kernel modules: nvidia
07:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8191SEvA Wireless LAN Controller (rev 10)
        Subsystem: AzureWave Device 1107
        Kernel driver in use: rtl8192se
09:00.0 Ethernet controller: Qualcomm Atheros AR8132 Fast Ethernet (rev c0)
        Subsystem: ASUSTeK Computer Inc. Device 14e5
        Kernel driver in use: atl1c 

То есть модули загружены (естественно, они же в ядре собраны как-никак), но вот фирмварь не понимает :(

К слову, такой же косяк наблюдал при сборке новой системы уже месяца два. Думал, что что-то неправильно сделал и прекращал попытки собрать "еще одну систему"...

Покопал /var/log/dmesg.

&quot;dmesg | grep rtl&quot;
text
[    0.955060] rtl8192se: FW Power Save off (module option)
[    0.955192] rtl8192se: Driver for Realtek RTL8192SE/RTL8191SE
Loading firmware rtlwifi/rtl8192sefw.bin
[   60.960171] rtl8192se: Firmware rtlwifi/rtl8192sefw.bin not available

#315532

С этими реалтеками... мне например в ядре пришлось 8169 выключать, чтобы net-misc/r8168 поставить.
Название интерфейсов тоже "нестандарт", плюс 70-persistent-net.rules отсутствует.

text
# ifconfig
enp3s0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 5c:9a:d8:68:47:2c  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 45  base 0x8000  

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 0 (Local Loopback) RX packets 64 bytes 1856 (1.8 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 64 bytes 1856 (1.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255 inet6 fe80::6a5d:43ff:fe4d:ca2e prefixlen 64 scopeid 0x20<link> ether 68:5d:43:4d:ca:2e txqueuelen 1000 (Ethernet) RX packets 4343035 bytes 6460567880 (6.0 GiB) RX errors 0 dropped 1041 overruns 0 frame 0 TX packets 2134639 bytes 184967914 (176.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

ы. Про rtl8192se

#315538

Да ужж, а новости читаем как всегда - по диагонали...

#315549
zenon написал:
Да ужж, а новости читаем как всегда - по диагонали...

Это точно *SORRY* Пошел читать...

#315556

Так, хочу вернуть старые имена интерфейсов (хоть какие, главное - что бы были).

Показать
If /etc/udev/rules.d/80-net-name-slot.rules is an empty file or a
symlink to /dev/null, the new names will be disabled and the kernel will
do all the interface naming, and the resulting names may vary by kernel
configuration, hardware configuration and kernel version.

Сделал, перезагрузился. Появился eth0. И все :(
На /etc/init.d/net.wlan0 ругается, что нет такого интерфейса и точка. Глянул. В /sys/devices/pci0000:00/0000:00:16.0 нет каталога net, хотя он должен быть (у /sys/devices/pci0000:00/0000:00:18.0 он есть - подкаталог 0000:09:00.0/net/eth0, т.е. простой шнурок находится и работает нормально - проверено).

Модуль rtl8192se находится в ядре, фирмварь грузится нормально. Но интерфейс не выплывает...

#315558

Я как-то это обновление перепрыгнул, с нуля поставив генту на ноут и обновившись сразу до тестинга, поставил NM и все заработало... в conf.d/net вообще не лез.
Но надо ещё пару десктопов обновить...

#315559

zenon, Я собирал актуальную версию с 0 - результат 1:1. То есть находит проводную сеть, а беспроводную ни в какую не видит.
Попробую сделать еще одну попытку сборки с 0. Но это же не выход - ставить новую систему при подобных "косяках"...

#315562
text
You basically have three options:

You disable the assignment of fixed names, so that the unpredictable kernel names are used again. For this, simply mask udev's rule file for the default policy: ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules

You create your own manual naming scheme, for example by naming your interfaces "internet0", "dmz0" or "lan0". For that create your own udev rules file and set the NAME property for the devices. Make sure to order it before the default policy file, for example by naming it /etc/udev/rules.d/70-my-net-names.rules

You alter the default policy file, for picking a different naming scheme, for example for naming all interface names after their MAC address by default: cp /usr/lib/udev/rules.d/80-net-name-slot.rules /etc/udev/rules.d/80-net-name-slot.rules, then edit the file there and change the lines as necessary.

всё перепробовал?

#315563

megabaks, Попробую...

#315564

Прописал в /etc/udev/rules.d/80-net-name-slot.rules следующее:

text
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="[i]wlan_mac[/i]", NAME="wlan0"

Аналогично и для eth0.
Ребут.
Eth0 виден как надо, а вот wlan0 так и не появилось...

Судя по всему система вообще не может найти данный интерфейс, то есть косяк с модулем. Попробую на чистой системе поставить с более старым udev'ом...

#315699

Фигня какая-то.
Маскирую ">=sys-fs/udev-200", обновляю мир. Все ок, WiFi есть. каталог /sys/devices/pci0000:00/0000:00:16/0000:07:00.0/net есть
Комментирую маску, обновляю - WiFi нету. Высшеназванного каталога нету.

Мой личный вывод - udev просто нормально не видит мою карточку. Кто может подсказать пути решения, кроме как "оставить старый udev"?

#315703
Lupo Alberto написал:
Я делал всё по этой ссылке — http://wiki.gentoo.org/wiki/Udev/upgrade — всё заработало.

Спасибо за наводку. Все дело было в флаге "firmware-loader" :)
Тема закрыта.

PS: В очередной раз убеждаюсь, что копаться с линуксом параллельно работе - вредно. Особенно если работаешь над дипломом...

Войдите или зарегистрируйтесь, чтобы ответить.