在 Linux 服务器、WSL 子系统或无桌面 VPS 环境中,开发者经常需要连接 GitHub 拉取代码(git clone)、更新依赖包(pip install / npm install)或下载 Docker 镜像。然而,受网络干扰影响,直接连接常常面临连接超时或拒绝访问的问题。
许多用户搜索 Linux 代理教程时,依然会发现一些陈旧文章推荐原版 Clash。由于原版开发者已于 2023 年底删库停更,目前 2026 年在 Linux 环境下科学上网的终极方案是使用开源社区主导的 Mihomo (原 Clash Meta 内核)。本文将一步步带你在纯命令行环境下搭建高效、稳定且能开机自启的加速环境。
一、内核选型:为什么选择 Mihomo?
原版 Clash 二进制工具早已无法在官方 GitHub 仓库下载。作为其直接继承者,Mihomo 完美兼容原版 Clash 的配置文件结构(config.yaml),同时新增了对 Vless、Hysteria2、TUIC v5 等先进代理协议的支持,抗封锁与传输效率大幅提升。
在 Linux 上使用 Mihomo 核心非常清晰:只需要获取二进制可执行文件,配上机场提供的订阅配置,并将其注册为 Systemd 系统服务即可。
二、第一步:获取机场 Clash / Mihomo 订阅链接
内核程序如同“播放器”,而节点数据则是“资源内容”。在开始配置前,你需要有一个支持 Clash 格式的机场订阅服务:
- 登录你的机场控制台,找到服务卡片或订阅中心。
- 点击【复制 Clash 订阅链接】(部分机场提供一键复制或 Mihomo 专用订阅地址)。
- 链接通常形如:
https://api.your-airport.com/link/xxx?clash=1。请妥善保管该链接,切勿泄漏。
三、第二步:确认 CPU 架构并下载 Mihomo
Linux 系统常见的坑之一就是下错 CPU 架构对应的二进制文件。首先在终端输入以下命令查看系统架构:
uname -m
根据输出结果选择对应版本:
x86_64或amd64:对应选择mihomo-linux-amd64-*.gz(最常见的 64 位 Intel/AMD 服务器)。aarch64或arm64:对应选择mihomo-linux-arm64-*.gz(如苹果 M 芯片 Linux 虚拟机、树莓派 4/5 或 ARM 云服务器)。
使用 curl 或 wget 从 Mihomo GitHub Release 页面下载最新版二进制压缩包,解压并移动到系统可执行路径:
# 下载解压示例(以 amd64 为例)
curl -LO https://github.com/MetaCubeX/mihomo/releases/download/v1.19.0/mihomo-linux-amd64-v1.19.0.gz
gzip -d mihomo-linux-amd64-v1.19.0.gz
# 移动到系统 bin 目录并授予执行权限
sudo mv mihomo-linux-amd64-v1.19.0 /usr/local/bin/mihomo
sudo chmod +x /usr/local/bin/mihomo
# 验证安装版本
mihomo -v
四、第三步:拉取配置文件与前台连通测试
创建存放配置文件的系统目录,并通过订阅链接将配置文件拉取到本地:
# 创建配置目录
sudo mkdir -p /etc/mihomo
# 使用 curl 下载订阅文件存为 config.yaml
sudo curl -L '你的机场订阅链接' -o /etc/mihomo/config.yaml
# 查看配置文件前 20 行,确保包含 mixed-port 或 proxies 节点字段
head -n 20 /etc/mihomo/config.yaml
配置文件就位后,先在当前终端手动前台跑一次进行连通测试:
# 指定配置文件夹启动
mihomo -d /etc/mihomo
若终端输出中包含 Mixed(http+socks) proxy listening at: :7890,说明代理端口成功起动。另开一个终端窗口输入 curl -I -x http://127.0.0.1:7890 https://www.google.com,若返回 HTTP 200/301 状态码,即证明节点代理已经通畅。按 Ctrl + C 结束前台进程。
五、第四步:配置 Systemd 守护进程与开机自启
为了防止服务器重启后代理失效或进程异常挂掉,强烈建议使用 Systemd 注册为后台托管服务:
# 创建系统服务配置文件
sudo tee /etc/systemd/system/mihomo.service > /dev/null <
六、第五步:设置终端与工具链代理环境变量
Mihomo 跑在后台仅代表本地代理端口(如 7890)已开放,终端命令行默认依然走直连。你需要设置环境变量引导命令经过代理:
1. 当前终端临时生效:
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export all_proxy=socks5://127.0.0.1:7890
2. 永久写入终端配置文件(Debian/Ubuntu):
echo 'export http_proxy=http://127.0.0.1:7890' >> ~/.bashrc
echo 'export https_proxy=http://127.0.0.1:7890' >> ~/.bashrc
echo 'export all_proxy=socks5://127.0.0.1:7890' >> ~/.bashrc
source ~/.bashrc
3. 特殊工具接管技巧:
- Git SSH Clone:
git clone [email protected]:...采用 SSH 协议不读取 HTTP 环境变量。建议优先采用https://github.com/...地址拉取。 - Docker Pull:Docker 守护进程不读取用户环境变量,需创建
/etc/systemd/system/docker.service.d/http-proxy.conf配置文件并写入[Service] Environment="HTTP_PROXY=http://127.0.0.1:7890"后重启 Docker 服务。
七、常见排障与总结
- 报错
cannot execute binary file:说明选错了 CPU 架构(例如在 ARM 服务器上了 AMD64 二进制文件),重新执行uname -m对照下载。 - 报错
bind: address already in use:7890 端口被占用,可修改/etc/mihomo/config.yaml中的mixed-port端口数或杀掉旧进程。
通过“获取订阅 -> 下载 Mihomo -> Systemd 托管 -> 环境变量代理”这四大核心步骤,Linux 服务器即可轻松实现全天候稳定出海加速。