Вопрос "Не удалось установить флаги интерфейса wlan0 (UP): Ошибка ввода / вывода" RT3290


Я столкнулся с очень загадочной проблемой с моей WiFi-картой на Ubuntu. После перезагрузки он всегда отключен, и нет возможности вернуть его, кроме как приостановить или выключить ноутбук. Статус в соответствии с Network Manager - «устройство не готово». Это происходит последовательно.

Некоторый фон в моей системе:

  • Ноутбук HP 350 G1.
  • Плата WLAN - печально известный Ralink RT3290. (Если бы я знал, сколько проблем у меня было бы с этим, я бы никогда не купил его).
  • Ubuntu - последняя версия LTS 16.04, недавно обновленная.
  • Ядро 4.4.9-040409-generic (был 4.4.0-22-generic перед обновлением с основной линии - без разницы по WiFi).

Перед обновлением дистрибутива я использовал версию rt3290sta/2.6.0.0 драйвер (скомпилирован из источника и загружен через DKMS), который выполняется в основном отлично, но он не работает с более новыми ядрами, и, похоже, он оставлен в любом случае. Так что теперь мне пришлось вернуться к rt2800 и с этой проблемой.

Это кажется очень старой, но повторяющейся проблемой. Я читал все темы, которые мог найти, но пока не повезло. К счастью, это не важно для меня, потому что я редко перезагружаюсь, но это по-прежнему раздражает и досадно.

Ниже приведены результаты некоторых команд, которые могут представлять интерес (это состояние после перезагрузки):

lshw -c network говорит, что интерфейс отключен:

# lshw -c network
*-network               
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:01:00.0
       logical name: eth0
       version: 10
       serial: c4:34:6b:05:5f:ff
       size: 10Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half firmware=rtl8168g-3_0.0.1 04/23/13 latency=0 link=no multicast=yes port=MII speed=10Mbit/s
       resources: irq:43 ioport:4000(size=256) memory:b2504000-b2504fff memory:b2500000-b2503fff
  *-network DISABLED
       description: Wireless interface
       product: RT3290 Wireless 802.11n 1T/1R PCIe
       vendor: Ralink corp.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlan0
       version: 00
       serial: 00:71:cc:6b:fe:f1
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=rt2800pci driverversion=4.4.9-040409-generic firmware=0.37 latency=0 link=no multicast=yes wireless=IEEE 802.11bgn
       resources: irq:17 memory:b2410000-b241ffff
  *-network DISABLED
       description: Ethernet interface
       physical id: 1
       logical name: virbr0-nic
       serial: 52:54:00:e5:13:31
       size: 10Mbit/s
       capabilities: ethernet physical
       configuration: autonegotiation=off broadcast=yes driver=tun driverversion=1.6 duplex=full link=no multicast=yes port=twisted pair speed=10Mbit/s

Однако, rfkill list не согласен:

# rfkill list
0: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no


4
2018-05-10 21:34


происхождения




ответы:


Драйверу rt2800pci необходимо выгрузить прошивку с устройства, которое сохраняется во время перезагрузки. В Ubuntu 16.04 перед перезагрузкой вам необходимо выполнить следующую команду:

sudo rmmod rt2800pci

затем перезагрузитесь.

Чтобы автоматизировать задачу для перезагрузки, создайте сценарий оболочки в /etc/init.d/rt3290removedriver со следующим содержанием:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          skeleton
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Example initscript
# Description:       This file should be used to construct scripts to be
#                    placed in /etc/init.d.  This example start a
#                    single forking daemon capable of writing a pid
#                    file.  To get other behavoirs, implemend
#                    do_start(), do_stop() or other functions to
#                    override the defaults in /lib/init/init-d-script.
### END INIT INFO

# /etc/init.d/rt3290removedriver

case "$1" in
   start)
       echo "Removal of driver rt2800pci success" > /home/youruser/rt2800pci.txt
       echo "Power Down" 
   ;;
   stop)
       rmmod rt2800pci
       echo "Removal of driver rt2800pci success" > /home/youruser/rt2800pci.txt
       echo "Power Down"
       exit 1
   ;;
   *)
       rmmod rt2800pci
       echo "Removal of driver rt2800pci success" > /home/youruser/rt2800pci.txt
       echo "Power Down"
       exit 1
   ;;
esac
exit 0

Затем обновите скрипты командой

sudo update-rc.d rt3290removedriver defaults

И все готово. Замените youruser в скрипте своим именем пользователя. Протестировано на HP Pavilion с Ubuntu 16.04 и rt3290 wifi pci-картой.


2
2018-05-01 14:05





Если у вас есть двойная загрузка с Windows, попробуйте загрузить Windows, а затем вернитесь в Ubuntu. Windows имеет тенденцию переопределять настройки BIOS на некоторых ноутбуках.

У меня ProBook 4540s с той же проблемой, и это исправлено.

Я получил подозрение, когда загрузил Live USB с Ubuntu 14.04. У меня было такое же сообщение в меню сетевого менеджера, как и на установленном 16.04.


0
2018-05-12 07:15



У меня нет двойной загрузки и никогда на этой машине. Как я уже сказал, приостановить или завершить работу устранить проблему до следующей перезагрузки. - g.krastev


Не удалось заставить его работать. НАЙДЕННЫЙ РЕШЕНИЕ:

http://www.mediafire.com/download/zyfql95clzs24z0/RT3290_u16.tar.gz

sudo ifconfig -a

перечислит все доступные интерфейсы Ethernet. Теперь активируйте свой интерфейс WIFI:

sudo ifconfig interface-name up

Авторство Md Imam Hossain


0
2018-05-24 10:25



Это ссылка / архив не решение. я рекомендую редактироватьчтобы ответить на этот вопрос, чтобы развернуть его с подробными сведениями о том, как его использовать. (Смотрите также Как написать хороший ответ? для общих советов о том, какие ответы наиболее ценны для Ask Ubuntu.) - David Foerster
См. Оригинальный блогпост от Md Imam Hossain onthim.blogspot.co.ke/2015/06/... - Jonathan