介绍
wol 是一个由 Trugamr 开发的开源命令行工具,旨在通过发送 Wake-On-LAN(WOL)魔术包来唤醒网络中的设备。该工具既提供命令行界面(CLI)也提供网页界面,方便用户根据需求选择使用。
主要功能
- 多种唤醒方式:支持通过命令行或网页界面发送 WOL 魔术包,满足不同用户的操作习惯。
- 设备管理:允许配置多个设备的名称、MAC 地址和 IP 地址,便于管理和快速访问。
- 设备列表:提供已配置设备的列表,方便查看和管理。
- 网页界面:提供直观的网页界面,用户可以轻松地通过浏览器唤醒设备。
- Docker 支持:支持通过 Docker 部署,简化安装和配置过程。
支持的系统
wol 提供预编译的二进制文件,支持以下平台:
- Linux:支持 x86_64、arm64 和 armv7 架构。
- macOS:支持 x86_64 和 arm64 架构。
- Windows:支持 x86_64 架构。
此外,用户也可以使用 Go 语言进行安装,或通过 Docker 进行部署,进一步提高了跨平台的兼容性。
安装与配置
预编译二进制文件:用户可以从发布页面下载适合自己平台的最新版本。
- 使用 Go 安装:执行以下命令安装最新版本:
go install github.com/trugamr/wol@latest
- 使用 Docker 部署:运行以下命令启动容器:
docker run --network host -v $(pwd)/config.yaml:/etc/wol/config.yaml ghcr.io/trugamr/wol:lates
- 或者使用 docker-compose:
services:
wol:
image: ghcr.io/trugamr/wol:latest
command: serve # 启动网页界面
network_mode: "host"
volumes:
- ./config.yaml:/etc/wol/config.yaml
配置文件 config.yaml 应放置在以下位置之一(按优先级排序):
- 当前目录下的 ./config.yaml
- 用户主目录下的 ~/.wol/config.yaml
- 系统范围内的 /etc/wol/config.yaml
示例配置:
machines:
- name: desktop
mac: "00:11:22:33:44:55"
ip: "192.168.1.100" # 可选,用于状态检查
- name: server
mac: "AA:BB:CC:DD:EE:FF"
ip: "192.168.1.101" # 可选,用于状态检查
server:
listen: ":7777" # 可选,默认为 :7777
使用方法
(1) 命令行界面:
- 列出所有已配置的设备:
wol list
- 通过设备名称唤醒设备:
wol send --name desktop
- 通过 MAC 地址唤醒设备:
wol send --mac "00:11:22:33:44:55"
- 启动网页界面:
wol serve
- 显示版本信息:
wol version
(2) 网页界面:在运行 wol serve 命令后,网页界面可通过 http://localhost:7777 访问,提供以下功能:
- 查看所有已配置的设备列表
- 一键唤醒设备
- 实时监控设备状态(需配置 IP 地址)
- 查看版本信息
- 访问文档和支持链接
优势
- 多平台支持:wol 提供适用于多种操作系统的预编译二进制文件,并支持通过 Go 安装和 Docker 部署,确保在不同环境下的兼容性。
- 多种操作界面:同时提供命令行和网页界面,满足不同用户的使用偏好。
- 易于配置和管理:支持通过配置文件管理多个设备,提供设备列表功能,方便用户查看和管理已配置的设备。
- 开源社区支持:作为一个开源项目,wol 欢迎社区贡献,用户可以根据自身需求进行定制和扩展。
截图
总结
wol 是一个功能强大且易于使用的工具,适合需要远程唤醒网络设备的用户。
地址
项目地址:https://github.com/Trugamr/wol