一行脚本实现远程开机

Posted Li-Yongjun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一行脚本实现远程开机相关的知识,希望对你有一定的参考价值。

先上脚本,再慢慢介绍

etherwake -i eth0.2 00:11:22:33:44:55

远程的需要

平时出差,或者在公司上班,突然想用到家里电脑中的资料怎么办?
很简单,
提前在家里的电脑中运行『向日葵』等远程桌面软件就可以了。

关机的窘境

但是,不像公司的电脑,一连运行一两个月都不带关机的;家里的电脑,晚上使用后,一般都会进行关机操作,一来省电,二来延长硬盘寿命。甚至有些小伙伴的电脑是放在卧室的,那肯定要关机了,不然风扇呼呼地影响休息。

远程开机的乐趣

这时候,就需要用到远程开机了。

step1 远程到路由器

家里的路由器一般都是 7 * 24 小时运行的。我们可以把路由器刷成我们顺手的操作系统,比如我家里的一台 WNDR4300,被我刷成了 OpenWrt,用来当作家里的『守护神』。之前文章里提到的 DDNS 功能就是跑在这台路由器上面的,每十分钟将家里的公网 IP 更新到 DDNS 服务器上。这里就不多说了,有机会的话单独介绍。总之,我能够在外面随时通过公网 IP 访问家里的 OpwnWrt 路由器,即使家里光猫重启后公网 IP 发生变化。

step2 安装 wol 软件

wol 全称 Wake on Lan,局域网唤醒。在 OpenWrt 上可以安装 etherwake,其他平台上应该也能搜到类似的软件。实在不行可以自己编译,这里有源码。

一行脚本

先上脚本

my_wake

etherwake -i eth0.2 00:11:22:33:44:55

其中 eth0.2 是路由器上连接到局域网的网卡(由于路由器有多张网卡,所以这里需要指定下),00:11:22:33:44:55 是待唤醒主机的 MAC 地址。

开机自启

把远程桌面工具设为开机自启

完结

最后,当我们在外地时,先用手机或电脑远程登录到家中的路由器,然后运行 ./my_wake,就可以将家中的电脑唤醒了。然后可以使用远程桌面工具尽情地远程玩耍了。

小技巧

  • 在大多数的台式机上都是网络唤醒功能的,在大多数的笔记本上都是没有网络唤醒功能的。
  • 网络唤醒功能可能需要进入 Bios 进行开启才会生效
  • 网络唤醒功能的原理是电脑关机时网卡继续通电,通过收到特殊的网络包唤醒电脑,所以验证你的电脑是否开启了网络唤醒功能的一个方法是:电脑正常关机后,网口灯是否继续亮或者闪烁。
    在这里插入图片描述
    如上图,在正常关机后,网口指示灯依旧正常闪烁,说明可以被网络唤醒。

以上是关于一行脚本实现远程开机的主要内容,如果未能解决你的问题,请参考以下文章

linux实现开机自启动脚本

ios 实现局域网远程开机的代码

2分钟-实现开机nginx开机自启动脚本(shell篇)

代码片段:Shell脚本实现重复执行和多进程

Windows 10计划开机或远程开机

电脑远程开机,远程关机怎么来实现?