GDE · 客户端教程
Linux 装 mihomo 教程:下载、systemd 守护、命令行走代理(傻瓜式)
客户端教程进阶Linux
Linux 用机场最通用的做法是直接跑 mihomo 内核:从 GitHub 官方或国内加速下载对应架构的二进制,把机场订阅转成 config.yaml,用 systemd 守护运行,再用环境变量或 TUN 让流量走代理;桌面用户可直接用有图形界面的 Clash Verge Rev。
一句话结论
Linux 用机场,服务器/无桌面环境最通用的是直接跑 mihomo 内核:下载二进制 → 把订阅转成 config.yaml → 用 systemd 守护 → 让程序走代理。桌面用户别折腾命令行,直接装有图形界面的 Clash Verge Rev(有 deb/rpm/AppImage)即可,步骤同 Windows 教程。
准备工作
- 一台 Linux(服务器/软路由/NAS 无需桌面;命令里以 root 或 sudo 执行);
- 一条机场订阅链接。还没有机场?本站实测推荐 星岛梦(已核查评测)。
mihomo 是「Clash 系」的内核(原 Clash.Meta),概念见内核词条与客户端介绍。
第一步:下载 mihomo 二进制
先查架构:uname -m。x86_64 → 用 amd64;aarch64 → 用 arm64。
GitHub 官方下载(最可信)
到 https://github.com/MetaCubeX/mihomo/releases 找最新版,在 Assets 里选对应架构的压缩包(形如 mihomo-linux-amd64-vX.Y.Z.gz)。命令行示例:
mkdir -p /opt/mihomo && cd /opt/mihomo
# 把下面链接换成 Releases 页对应架构的最新文件
curl -LO https://github.com/MetaCubeX/mihomo/releases/download/vX.Y.Z/mihomo-linux-amd64-vX.Y.Z.gz
gzip -d mihomo-linux-amd64-vX.Y.Z.gz
mv mihomo-linux-amd64-vX.Y.Z mihomo
chmod +x mihomo
国内加速下载(GitHub 打不开或很慢时)
在 curl/wget 的 GitHub 链接前加一个公共加速前缀(只转发官方文件、不改包):
# 示例:加速前缀 + 原始官方链接(前缀域名会变,用不了就换一个)
curl -LO https://gh-proxy.com/https://github.com/MetaCubeX/mihomo/releases/download/vX.Y.Z/mihomo-linux-amd64-vX.Y.Z.gz
或临时挂一个节点让服务器直连 GitHub。只用官方 GitHub 或「只转发」的加速,别从来路不明的下载站取二进制。
第二步:把订阅转成 config.yaml
多数机场订阅可直接返回 Clash YAML:
# 给 UA 加 clash,让面板返回 Clash 格式;注意订阅链接加引号
curl -A "clash" -o /opt/mihomo/config.yaml "你的订阅链接"
# 确认是 YAML 而非 base64:能看到 proxies:、rules: 就对了
head -20 /opt/mihomo/config.yaml
改一下配置头部,确保只监听本机、并给控制端口设密码:
mixed-port: 7890 # HTTP/SOCKS 混合端口
bind-address: 127.0.0.1 # 不要监听公网
external-controller: 127.0.0.1:9090
secret: "改成一段随机字符串" # 面板控制密码
第三步:用 systemd 守护运行
新建 /etc/systemd/system/mihomo.service:
[Unit]
Description=mihomo proxy
After=network.target
[Service]
ExecStart=/opt/mihomo/mihomo -d /opt/mihomo
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
启用并验证:
systemctl daemon-reload
systemctl enable --now mihomo
systemctl status mihomo
# 验证代理可用
curl -x http://127.0.0.1:7890 -sI https://www.google.com | head -1
第四步:让程序走代理
方式一:环境变量(推荐,影响范围可控)
export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890
写进 ~/.bashrc 可持久化;git、curl、wget、多数包管理器都遵守这组变量。
方式二:TUN 模式(接管全部流量):配置里加入 tun: {enable: true, stack: system, auto-route: true} 并以 root 运行。服务器上慎用——接管路由可能影响你的 SSH 连接。
日常维护与排查
- 更新订阅:重新
curl覆盖 config.yaml 后systemctl restart mihomo,可写成 cron 定时任务; - 切换节点/看状态:用 Web 面板(如 metacubexd)连接 external-controller 图形化操作;
- 看日志:
journalctl -u mihomo -f; - 连不上:连不上排查手册同样适用(更新订阅 → 换节点 → 查配置/日志)。
常见问题
桌面 Linux 也要用命令行吗?
不必。Clash Verge Rev 提供 deb / rpm / AppImage 包,图形界面和 Windows/macOS 版一致,桌面用户直接用它最省事。本文的命令行方案更适合服务器、软路由、NAS 等无桌面环境。
下载哪个二进制文件?
按 CPU 架构选:常见 x86 服务器/电脑选 amd64;ARM 设备(树莓派、部分云主机、软路由)选 arm64。用 uname -m 查:x86_64 对应 amd64、aarch64 对应 arm64。
GitHub 打不开、下载慢怎么办?
命令行下用 GitHub 文件加速代理:在 wget/curl 的 github release 链接前加公共加速前缀(只转发不改包),或临时挂一个节点直连。始终优先官方 GitHub。
订阅链接怎么变成 config.yaml?
多数机场支持在订阅链接后带参数直接返回 Clash YAML。用 curl 加一个 clash 的 User-Agent 拉取,检查返回内容里有 proxies、rules 这些字段就能直接存成 config.yaml 使用。
服务器上跑代理要注意什么?
两点:监听地址保持 127.0.0.1(不要监听公网),外部控制端口 external-controller 一定设 secret。公网裸奔的代理端口会在数小时内被扫描滥用。