Už jsem tu zahlédl kolem desítky dotazů na nefunkčnost třináctého kanálu wifi a rozhodl jsem se tomu přijít na kloub.
Tady je ruční postup, třeba nějaká šikovná duše namísto stahování rodinky napíše skriptík
Následující nedávám do kódu, protože chci barevně značit.
#1) podívám se jakou mám wifi kartu, hlavně jaký modul se mi o ni stará
martin@a3-ntb:~$ lshw | grep wirel
WARNING: you should run this program as super-user.
capabilities: bus_master cap_list logical ethernet physical wireless
configuration: broadcast=yes driver=iwl3945 latency=0
module=iwl3945 multicast=yes wireless=IEEE 802.11abg
#2) podívám se na jakých modulech závisí
martin@a3-ntb:~$ lsmod |
grep iwl3945iwl3945 96244 0
lbm_iwl_mac80211 242292 1 iwl3945
rfkill 8596 2 iwl3945
lbm_iwl_cfg80211 33248 2 iwl3945,lbm_iwl_mac80211
led_class 6020 2 iwl3945,asus_laptop
#3) vidím v mém případě pět kousků, led_class bude obsluha světýlka, rfkill hardwarový vypínač wifi, ze zbývajících tří mi připadá nejzajímavější lbm_iwl_cfg80211, proto se na něj podívám podrobněji, zajímá mne hlavně řádek s
parametry:
martin@a3-ntb:~$ modinfo
lbm_iwl_cfg80211filename: /lib/modules/2.6.24-23-generic/updates/lbm-iwl-cfg80211.ko
description: wireless configuration support
license: GPL
author: Johannes Berg
srcversion: B1B8A84387ECE10745C0BEF
depends:
vermagic: 2.6.24-23-generic SMP mod_unload 586
parm: ieee80211_regdom:IEEE 802.11 regulatory domain code (charp)#4)to vypadá že jsem se trefil napoprvé, "regulatory domain code" může být myslím US, EU, JP
parametr mu předhodím jako options aby si jej načetl sám při načítání modulu:
martin@a3-ntb:~$ sudo sh -c "echo 'options lbm_iwl_cfg80211 ieee80211_regdom=\"EU\"' > /etc/modprobe.d/lbm_iwl_cfg80211"
tímto příkazem jsem vytvořil soubor /etc/modprobe.d/lbm_iwl_cfg80211 který obsahuje jediný řádek:
options lbm_iwl_cfg80211 ieee80211_regdom="EU"
#5)restartuji notebook
martin@a3-ntb:~$ sudo reboot
(kdo nemůže restartovat tak je potřeba unloadnout všechny závislé moduly, třeba pomocí "modprobe -r nazevmodulu" a pak zas zavést pomocí "modprobe nazevmodulu")
A po restartu vidím jak na mně bliká nalezená bezdrátová síť na třináctém kanálu
Vypadá to že regulatory domain by nemělo být EU, US, JP, ale víceméně různé dvojpísmenné zkratky pro různé státy, alespoň dle následujícího:
http://wireless.kernel.org/download/wireless-regdb/Měnit to nebudu, EU mi funguje a zdrojáky modulu se mi teď procházet nechce.
Přeji hodně štěstí, napište komu se dle tohoto návodu podaří třináctý kanál rozchodit.