
wol 定时唤醒全攻略用 cron 让设备每天自动开机【免费下载链接】wol Wake up your devices with a single command or click. A Wake-On-LAN tool that works via CLI and web interface.项目地址: https://gitcode.com/gh_mirrors/wo/wol每天到工位后你是不是还在等电脑慢慢开机其实wol 定时唤醒功能能让你彻底告别手动开机。wol 是一款开源的 Wake-On-LAN网络唤醒工具同时提供 CLI 命令行和 Web 界面内置基于 cron 的定时调度器只需在配置文件中写一行定时规则wol 就能让指定设备在设定时间自动开机。本攻略将从安装、配置到问题排查带你完整掌握 wol 定时唤醒的全部技巧。wol 定时唤醒是什么为什么你需要它Wake-On-LAN 的核心原理很简单向局域网内目标设备的网卡发送一个魔法包Magic Packet网卡收到后就会触发主板开机。wol 工具把这个过程封装成了简单的命令而定时唤醒则让整个过程全自动 每天 08:00 自动唤醒办公室电脑到岗即用 凌晨定时唤醒 NAS自动执行备份任务️ 深夜唤醒服务器运行批量计算或数据同步⏰ 周末自动开机让系统更新和清理任务悄悄完成对于网管和家庭用户来说wol 定时唤醒就是无人值守运维的第一步一次配置长期生效。快速上手wol 的三种安装方式方式一使用预编译二进制直接下载对应平台的二进制文件即可使用支持 Linuxx86_64、arm64、armv7、macOSx86_64、arm64和 Windowsx86_64解压后即可运行wol命令。方式二使用 Dockerwol 提供了官方 Docker 镜像适合部署在 NAS、软路由等常开设备上长期运行。建议配合--network host主机网络模式使用并把配置文件挂载到容器内这样魔法包才能正常发往局域网。方式三源码编译如果想体验最新功能或研究源码可以克隆仓库后自行编译git clone https://gitcode.com/gh_mirrors/wo/wol cd wol go build编译完成后直接运行./wol即可查看命令帮助。手把手配置 wol 定时唤醒任务第一步在配置文件中登记设备在config.yaml中定义需要唤醒的设备。wol 会按优先级依次查找./config.yaml、~/.wol/config.yaml、/etc/wol/config.yaml三个位置也可以用-c参数指定任意路径machines: - name: desktop mac: 00:11:22:33:44:55 ip: 192.168.1.100 # 可选用于在线状态检测 - name: nas mac: AA:BB:CC:DD:EE:FF第二步添加定时唤醒规则这是 wol 定时唤醒的核心——在配置文件中新增schedules字段schedules: - name: morning-boot # 可选日志中显示的名称 machine: desktop # 必须对应上面的设备名 cron: 0 8 * * * # 必须每天 08:00 自动开机每个定时规则包含三个字段name可选标签、machine要唤醒的设备、cron执行时间。cron 表达式支持标准五段式分 时 日 月 周例如0 8 * * *表示每天 08:00、0 9 * * 1-5表示周一至周五 09:00也支持hourly、daily、weekly、monthly以及every 1h30m这类快捷写法。第三步启动 wol serve 让定时任务生效定时唤醒由serve命令驱动wol serve启动时 wol 会立即校验所有定时规则如果引用了不存在的设备名或 cron 表达式写错程序会直接报错退出绝不会悄悄失效。校验通过后wol 就在后台按计划自动发送唤醒魔法包无需你再干预。 相关源码参考定时调度器的实现见 cmd/schedule.goSchedule配置结构定义在 config/config.go完整的注释版配置示例在 config.example.yaml。5 个最实用的 wol cron 定时开机场景使用场景cron 表达式说明每天固定时间开机0 8 * * *每天早上 8 点自动开机工作日自动开机0 9 * * 1-5周一至周五 9 点唤醒周末备份唤醒0 2 * * 6周六凌晨 2 点唤醒 NAS 备份每小时周期性唤醒every 1h适合测试或巡检场景每日快速唤醒daily每天零点执行一次选中场景后把对应表达式填入schedules的cron字段重启wol serve即生效。定时唤醒不生效5 个高频问题排查1. 时区不对开机时间总对不上cron 表达式按服务器本地时间计算。在 Docker 容器中运行时务必通过环境变量设置时区TZAsia/Shanghai wol serve2. 魔法包发不出去多网卡环境默认广播地址是255.255.255.255:9但在多网卡主机如 WSL2、带 Docker 网桥的机器上系统可能从错误的网卡发出数据包。解决办法是改成设备所在子网的定向广播地址broadcast: address: 192.168.1.255 port: 93. 设备自身没开网络唤醒需要在主板 BIOS 中开启 Wake-On-LAN 相关选项并在操作系统网卡驱动中勾选魔术包唤醒。这是新手最容易忽略的一步软件配置得再好硬件不支持也无法唤醒。4. 启动时报错machine 或 cron 无效wol serve启动失败通常是因为定时规则引用了不存在的machine名称或 cron 表达式格式有误。对照设备名逐一检查拼写确认表达式符合五段式规范即可。5. Docker 容器内状态检测失败容器里 ping 设备需要内核权限可在宿主机执行sysctl -w net.ipv4.ping_group_range0 2147483647放行或者在配置中设置ping.privileged: true。进阶玩法用 Web 界面管理定时唤醒wol serve启动后访问http://localhost:7777即可打开 Web 界面设备列表、在线状态、一键唤醒按钮一目了然配置了定时任务的设备还会展示对应的定时规则非常适合放在家里或办公室长期运行。Web 界面与 CLI 共用同一份配置和定时调度逻辑命令行、网页两种方式可以灵活混用。serve命令启动调度器的逻辑见 cmd/serve.goWeb 页面模板在 cmd/templates/index.html。总结wol 定时唤醒把每天手动开机变成了全自动开机一次配置、长期生效支持 CLI 与 Web 双入口配合 Docker 部署后甚至可以跑在 NAS 上全年无休。无论是办公室电脑、家庭 NAS 还是机房服务器一行 cron 规则就能让设备每天准时待命。希望这份攻略能帮你彻底告别早起开机把时间留给更重要的事。【免费下载链接】wol Wake up your devices with a single command or click. A Wake-On-LAN tool that works via CLI and web interface.项目地址: https://gitcode.com/gh_mirrors/wo/wol创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考