我正在考虑在网络上安装文件服务器,以提供数据和备份。
我希望这台机器始终可用,但我不想一直都保持开机状态(以节省电量)。
是否可以进行设置,以使它在一段时间后自动挂起(或关闭电源),然后在我尝试连接到它时自动重新打开电源(使用LAN魔术唤醒,而无需发送明确的WOL包)?
我正在考虑在网络上安装文件服务器,以提供数据和备份。
我希望这台机器始终可用,但我不想一直都保持开机状态(以节省电量)。
是否可以进行设置,以使它在一段时间后自动挂起(或关闭电源),然后在我尝试连接到它时自动重新打开电源(使用LAN魔术唤醒,而无需发送明确的WOL包)?
Answers:
从Snow Leopard开始,OS X现在可以执行此操作。通过睡眠代理服务使之成为可能。这几乎是自动的。唯一的要求是您的局域网上还有第二台始终在线的Apple设备,可以充当睡眠代理。我相信,他们目前的低功耗嵌入式盒都支持此功能:机场,时光机和Apple TV。
不过,在一般情况下,我相信答案是否定的。我不知道任何其他实现了此类服务的OS。该技术是开源的,因此没有理由最终不会无处不在。可能还太新,以至于尚未被广泛采用。
您现在可能会问,为什么在局域网上需要第二个Apple盒子?
当PC处于睡眠状态时,内核以及网络堆栈均未运行,因此OS中没有代码可以响应您所希望的“魔术”包。
操作系统不处理局域网唤醒魔术包。它们被网络接口IC识别,该网络接口IC通过向CPU发送信号以使其从睡眠状态释放进行响应。可以这样做是因为IC在某些睡眠状态下仍保持上电状态。(这就是为什么在某些计算机上PC处于“关闭”状态时,以太网链接指示灯保持点亮的原因。)
苹果技术之所以起作用,是因为在PC进入睡眠之前,它会通知睡眠代理。然后,睡眠代理安排临时接受睡眠计算机的流量,如果发现有趣的东西,它将向PC发送WOL数据包,并移交接收到的流量。
我曾经使用PowerNap运气好(它是为ubuntu-sever打包的,但是源在那儿,所以您应该可以在任何东西上编译它)在不执行任何操作时挂起备份计算机。但是,这不会自动将它们唤醒。还有一个PowerWake程序与PowerNap源tarball捆绑在一起(打包powerwake
在Ubuntu中),该程序为Wake-On-Lan进程提供了一些抽象(例如,仅使用主机名即可轻松发送WOL),但是它仍然不是自动的。
编辑。另外一个选项:
我对它了解不多,因为我从未使用过它,但是有些卡能够唤醒任何单播消息。您可以使用ethtool查看卡是否具有该功能
# ethtool eth0
用eth0代替您的网络设备。然后查看以“ Supports Wake-on:”开头的行的输出。如果在该行上列出了“ u”,则可以在引导时执行以下操作(即,使用init脚本或类似的方法):
ethtool -s eth0 wol u
与PowerNap或其他使机器在某些情况下进入睡眠状态的组合在一起,这应该可以提供您所需要的东西。
ethertool
?
powerwake
似乎至少在ubuntu 10.10中包含在单独的同名软件包中。
powernap
和powerwake
包含在同一源代码树中,但以制作两个包的方式。一旦我想到了提及这一事实的好方法,我将稍作更新。