Check the runtime environment before deployment
On Linux, run uname -m to check the architecture. For routers, also check the firmware documentation for byte order, floating-point ABI, and system compatibility. MIPS and MIPSEL are not interchangeable; a device name containing MIPS alone isn't enough to choose a binary.
GZ archives usually need executable permissions after extraction. Check the configuration syntax before launching the core, then run it through a service manager. Keep the configuration directory, log location, and service account clear to avoid a manually started process and a background service competing for the same port.
mihomo -v
mihomo -t -f config.yaml
mihomo -f config.yaml
These commands assume the core is in your executable search path. If the file is in the current directory, use ./mihomo on Linux or macOS; on Windows, use .\mihomo.exe at the file's actual location. After the command checks pass, configure startup, TUN, and firewall settings.
Explore YAML fields and rule syntax →