2009-04-21 66 views
2

有没有办法以编程方式进入BIOS并为支持它的计算机打开Wake on LAN功能?如何以编程方式启用局域网唤醒

理想情况下,解决方案是跨BIOS,但用各自的解决方案击中每个主要供应商也可以。

回答

4

BIOS配置是操作系统有意限制以避免病毒问题(当天大量bios病毒!)。

您需要查看系统管理界面以查看它是否可用。你可能需要在windows的ring0中工作(或者在linux的root/kernel中)。此外,您可能需要学习如何直接访问硬件,学习并保存最常见的BIOS制造商和类型的数据库,即使这样也无法涵盖所有​​这些数据库。

2

SMBIOS可能有帮助吗?

我知道我们有一个实用程序读取从一个普通的windoze程序的BIOS一次,在我以前的工作。

0

我想你会发现Wake on LAN是一个CMOS设置选项,所以不能通过与硬件无关的操作系统接口进行编程。

戴尔公司为客户提供OpenManage工具套件,用于远程处理其客户机上的安装设置。有些链接:

Dell OpenManage
Wikipedia article

0

有上启用局域网唤醒几个步骤。首先它必须在BIOS中启用,其次它必须在网卡上启用。

在Windows中,您可以在网络适配器的高级选项对话框下找到设置。对于Linux,您可以使用ethtool命令。

使用ethtool eth0显示为eth0接口当前状态:

Settings for eth0: 
     Wake-on: g 

使用ethtool -s eth0 wol XYZ设置的选项,但请记住,不是所有的卡支持所有的网络唤醒方法,而且有些卡确实记得在重新启动设置,但其他人不需要(那么你需要将这个命令添加到你的启动脚本)。

 
wol p|u|m|b|a|g|s|d... 
    Sets Wake-on-LAN options. Not all devices support this. The argument to this option is a string of 
    characters specifying which options to enable. 
    p Wake on phy activity 
    u Wake on unicast messages 
    m Wake on multicast messages 
    b Wake on broadcast messages 
    a Wake on ARP 
    g Wake on MagicPacket(tm) 
    s Enable SecureOn(tm) password for MagicPacket(tm) 
    d Disable (wake on nothing). This option clears all previous options.