如何为Linux WiFi卡配置无线局域网唤醒

时间:2020-01-09 10:37:48  来源:igfitidea点击:

问题描述:
处于暂停或睡眠模式的笔记本电脑/计算机无法备份。
使用基于Intel的wifi卡时,如何在笔记本电脑上配置wifi以接收无线信号?
如何在Linux上配置无线局域网唤醒?

解决方法:
局域网唤醒(WOL)是一种以太网联网标准,允许通过网络消息打开服务器。

您需要将魔术包发送到启用了局域网唤醒功能的以太网适配器和母板上,以便打开被叫系统。

无线唤醒(WoWLAN或WoW)是一项功能,允许Linux系统进入低功耗状态,同时无线NIC保持活动状态并保持与AP的连接。
本快速教程介绍了如何通过在基于Linux的便携式计算机或台式计算机中安装的wifi卡启用WoWLAN或WoW(无线局域网唤醒)模式。

请注意,并非所有的WiFi卡或Linux驱动程序都支持WoWLAN功能。

在Linux下配置无线局域网唤醒的语法

您需要使用iw命令在基于Linux的系统上查看或操作无线设备及其配置。
语法为:

iw command
iw [options] command

列出所有无线设备及其功能

执行以下命令:

$ iw list
$ iw list | more
$ iw dev

输出示例:

phy#0
	Interface wlp3s0
		ifindex 3
		wdev 0x1
		addr 6c:88:14:ff:36:d0
		type managed
		channel 149 (5745 MHz), width: 40 MHz, center1: 5755 MHz
		txpower 15.00 dBm

请记下phy0。

找出您的wowlan的当前状态

打开终端应用程序,然后执行以下命令以找出wowlan状态:

$ iw phy0 wowlan show

输出示例:

WoWLAN is disabled

如何启用wowlan

语法为:

sudo iw phy {phyname} wowlan enable {option}

其中:

  • {phyname}使用iw dev获取phy名称。
  • {option}可以是任何,断开连接,魔术包等。

例如,我将为phy0启用wowlan:

$ sudo iw phy0 wowlan enable any

或者

$ sudo iw phy0 wowlan enable magic-packet disconnect

验证一下:

$ iw phy0 wowlan show

输出示例:

WoWLAN is enabled:
* wake up on disconnect
* wake up on magic packet

测试一下

将笔记本电脑置于挂起或睡眠模式,然后从nas服务器发送ping请求或魔术包:

$ sudo sh -c 'echo mem > /sys/power/state'

使用ping命令从您的nas服务器发送ping请求

$ ping your-laptop-ip

或使用wakeonlan命令发送魔术包:

$ wakeonlan laptop-mac-address-here
$ etherwake MAC-Address-Here

如何禁用WoWLAN?

语法为:

$ sudo phy {phyname} wowlan disable
$ sudo phy0 wowlan disable

重新启动后如何启用iw设置?

编辑或更新或创建一个名为/etc/rc.local的文件,如下所示:

sudo vim /etc/rc.local

更新如下:

#!/bin/bash
/sbin/iw phy0 wowlan enable magic-packet disconnect
exit 0

保存并关闭vim中的文件。
运行chmod命令以设置正确的权限:

sudo chmod +x /etc/rc.local

在systemd下,如果/etc/rc.local是可执行的,则rc-local将由systemd-rc-local-generator自动拉入multi-user.target。
例如,要查看此文件,请运行:

sudo systemctl edit --full rc-local