После обновления Ubuntu на ноутбуке (Dell Vostro A860) до версии 9.10 перестал работать Wifi при абсолютной тишине в логах. Модуль ath5k грузится без ошибки и правильно распознает чип от Atheros. А Network Manager скупо пишет "Устройство не готово".После продолжительного гугления выяснилось, что все дело в некорректной работе функциональной кнопки (Fn + F11), отвечающей за включение/отключение Wifi и Bluetooth:
$ tail /sys/class/rfkill/*/{state,name,type,persistent}
==> /sys/class/rfkill/rfkill1/state <==
0
==> /sys/class/rfkill/rfkill2/state <==
0
==> /sys/class/rfkill/rfkill3/state <==
0
==> /sys/class/rfkill/rfkill1/name <==
phy0
==> /sys/class/rfkill/rfkill2/name <==
dell-wifi
==> /sys/class/rfkill/rfkill3/name <==
dell-bluetooth
==> /sys/class/rfkill/rfkill1/type <==
wlan
==> /sys/class/rfkill/rfkill2/type <==
wlan
==> /sys/class/rfkill/rfkill3/type <==
bluetooth
==> /sys/class/rfkill/rfkill1/persistent <==
0
==> /sys/class/rfkill/rfkill2/persistent <==
0
==> /sys/class/rfkill/rfkill3/persistent <==
0Как видим, rfkill1 и rfkill2 имеют тип wlan. Состояние (state) у обоих равно 0, означающему SOFT LOCK. Кроме состояния 0 могут быть 1 и 2, UNLOCK и HARD LOCK соответственно.
Вся проблема состоит в том, что при нажатии на упомянутую ранее функциональную кнопку состояние переключается только между значениями SOFT LOCK и HARD LOCK, минуя UNLOCK. Из-за этого блокируется переход интерфейса Wifi в активный режим, наглядно демонстрируемый командой
$ sudo ifconfig wlan0 up
SIOCSIFFLAGS: Unknown error 132Решение состоит в принудительном переводе в состояние UNLOCK.
Для этого пишем простой скрипт#!/bin/sh
for i in /sys/class/rfkill/rfkill*/type;
do
type="`cat $i`"
if [ "$type" = "wlan" ];
then
n="`echo $i | sed -r 's%/type$%%'`";
echo 1 > ${n}/state;
fi;
done;Сохраняем скрипт в файл "/usr/local/sbin/unlock-wlan" и делаем его исполняемым
$ sudo chmod +x /usr/local/sbin/unlock-wlan
После ручного запуска скрипта надо перезапускать Network Manager – иначе он ничего не заметит.
Теперь настраиваем Upstart для исполнения нашего скрипта при загрузке системы, перед стартом Network Manager. Для этого создаем файл "/etc/init/unlock-wlan.conf"# unlock-wlan - unlock wireless device
#
description "unlock wireless device"
# Скрипт запускается перед настройкой сетевых интерфейсов
start on starting networking
task
exec /usr/local/sbin/unlock-wlan
URL: http://www.propheta.ru/2009/11/wireless-vs-ubuntu-karmic-koa...
Обсуждается: http://www.opennet.me/tips/info/2214.shtml
У мня знакомый искал FAQ про настройку
WiFi и Bluetooth в HP Mini 311 (VJ554EA).
Кто нить видел, расскажет?!
И из-за этого я перешел на Дебиан :D :D :D
а мне не помогло. Все сделал, как тут описано, но все равно
SIOCSIFFLAGS: Unknown error 132
А разве ещё кто-то с network manager'ом работает? У меня на домашнем буке в ubuntu с самого начала возникали разные проблемы с wi-fi, не помню уже какие. Пробовал уже и свободные дрова, и проприетарные -- ничего не помогало. Погуглив, нарвался на целый ряд форумов и др. ресурсов, где рекомендуют вообще на фиг сносить этот манагер и ставить wicd. Причём с ним заработали и свободные, и закрытые дрова. Раньше меня немного раздражало, что лампочка wi-fi не горит, но в 9.10 и этот баг исчез.
Боюсь, что вопрос будет не к месту. Но - у меня установлен в системе пакет rfkill. Однако, ни устройства /dev/rfkill ни директории /sys/class/rfkill нет. Думаю, из-за этого и Wi-Fi адаптер не работает. Подскажите, как устранить такую неполадку?
Наткнулся на эту проблему под gentoo (kernel 3.9.2, Intel Corporation Centrino Advanced-N 6235, ноут Sony SVS1513V9RB ) кнопок вкл/выкл wifi на ноуте нет.
Всё до поры до времяни нормально работало пока не получил soft lock при запуске wpa_supplicant
вылечил :
rm /dev/rfkill
echo 1 > /sys/class/rfkill/rfkill1/state
(без rm вторая строчка не работает )