如何修复 hostapd 无效/未知驱动程序“nl80211”错误?

如何修复 hostapd 无效/未知驱动程序“nl80211”错误?
  • 我有英特尔迅驰无线-N 1000
  • 我安装了hostapd来自 Ubuntu 软件中心
  • 当我运行此命令时,hostapd hostapd-minimal.conf我得到以下信息:

    root@tarek-PC:~# hostapd hostapd-minimal.conf
    Configuration file: hostapd-minimal.conf
    Line 2: invalid/unknown driver 'nl80211 '
    Line 4: unknown hw_mode 'g '
    2 errors found in configuration file 'hostapd-minimal.conf'
    

第一次执行后make我遇到了这个错误:

driver_nl80211.c:25:26: warning: netlink/attr.h: No such file or directory

我通过安装解决了这个问题libnl-1.0pre8

现在我在执行命令时出现此错误make

../src/crypto/crypto_openssl.c:10:30: fatal error: openssl/opensslv.h: No such file or directory
compilation terminated.
make: *** [../src/crypto/crypto_openssl.o] Error 1

有人能帮助我解决我在运行 Ubuntu 13.04 时出现的错误吗?

答案1

您需要构建或获取 hostapd 的另一个副本。您拥有的副本是使用选项CONFIG_DRIVER_NL80211设置为N而不是构建的Y

这里有简单详细的重建说明 →Hostapd 构建说明。启用该选项后重建它。您可能需要在 Google 上搜索 hostapd.2.0.tar.gz,但请严格按照链接中提到的操作。

对于后续问题/错误,请尝试libssl-dev使用此命令安装该库:

sudo apt-get install libssl-dev

答案2

看到值后面的空格了吗?删除它们。

  • 第 2 行:invalid/unknown driver 'nl80211 '

  • 第 4 行:unknown hw_mode 'g '

答案3

检查 EOL 格式。它应为 UNIX 格式,即 < LF >,而不是 < CR >< LF >。这修复了我的错误。

答案4

我遇到了类似的问题,但是值后面没有空格,因此我设法解决了它:

在遇到问题之前,我将 hostapd.conf 文件从 Windows 电脑复制到了 Raspberry Pi。我认为问题在于文本中有特殊字符。也许有些返回结果不同(因为我得到的是回车符而不是空格在错误值之后)

但猜测已经足够了,让我们来看看我的解决方案:

  1. 我将旧的 hostapd.conf 文件重命名为 hostapdOld.conf
  2. 我创建了一个名为 hostapd.conf 的新文件
  3. 然后我将旧文件的全部内容复制到新文件。(我只是选择了整个文本,没有使用 Ctrl+A,如果这很重要的话)

然后我像往常一样运行 hostapd,使用以下命令:

sudo hostapd -d /etc/hostapd/hostapd.conf

它再次发挥作用

相关内容