hostapd、ath5k、nl80211 - 如何让它工作?

Foo*_*Bar 3 linux networking wifi manjaro access-point

我在运行 Manjaro Linux(基于 Arch)的 Asus 笔记本中有这个网络适配器,一切都是最新的(内核:3.10.11):

> lspci -k | grep -A 3 -i "network"
lspci: Unable to load libkmod resources: error -12
07:00.0 Ethernet controller: Qualcomm Atheros AR242x / AR542x Wireless Network Adapter (PCI-Express) (rev 01)
    Subsystem: AzureWave AW-GE780 802.11bg Wireless Mini PCIe Card
    Kernel driver in use: ath5k
Run Code Online (Sandbox Code Playgroud)

iwconfig 给出:

> iwconfig
wlp7s0    IEEE 802.11bg  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
Run Code Online (Sandbox Code Playgroud)

我已经hostapd安装了 2.0。我的最低配置是:

interface=wlp7s0
driver=nl80211
hw_mode=g
ssid=test
channel=6
Run Code Online (Sandbox Code Playgroud)

运行它给出

> hostapd test.conf
Configuration file: test.conf
Could not set interface wlp7s0 flags (UP): Operation not permitted
nl80211 driver initialization failed.
Run Code Online (Sandbox Code Playgroud)

运行sudo

sudo hostapd test.conf
Configuration file: test.conf
nl80211: Failed to set interface wlp7s0 into AP mode
nl80211 driver initialization failed.
Run Code Online (Sandbox Code Playgroud)

这里有什么问题?如何让我的笔记本作为 AP 工作?

Foo*_*Bar 7

我自己刚刚找到了答案(在谷歌搜索几个小时后,在一篇关于 Ubuntu 的私人博客文章中找到了一个很小但非常重要的句子的答案):

禁用(意味着停止守护进程或终止进程)networkmanager(或在某些发行版中network-manager),因为它确实控制了 (W)LAN 适配器,阻止了其他程序。

这样做后,hostapd可以通过nl80211正确初始化来创建接入点。