我在运行 Manjaro Linux(基于 Arch)的华硕笔记本中有这个网络适配器,一切都是最新的(内核: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
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
我hostapd
安装的是2.0。我的最小配置是:
interface=wlp7s0
driver=nl80211
hw_mode=g
ssid=test
channel=6
运行它给出
> hostapd test.conf
Configuration file: test.conf
Could not set interface wlp7s0 flags (UP): Operation not permitted
nl80211 driver initialization failed.
运行sudo
:
sudo hostapd test.conf
Configuration file: test.conf
nl80211: Failed to set interface wlp7s0 into AP mode
nl80211 driver initialization failed.
这里有什么问题吗?如何让我的笔记本电脑作为 AP 工作?
答案1
我自己刚刚找到了答案(经过几个小时的谷歌搜索,在一篇关于 Ubuntu 的私人博客文章中的一个小但非常重要的句子中找到了答案):
禁用(意味着停止守护程序或终止进程)networkmanager
(或在某些发行版中network-manager
),因为它确实控制了 (W)LAN 适配器,阻止其他程序使用它。
完成此操作后,hostapd
可以通过正确初始化来创建接入点nl80211
。