机场坊 - 机场推荐机场坊机场测评手记 · 2026-10-26 更新

机场教程

Linux 使用机场教程 2026:mihomo 命令行与图形客户端(Ubuntu / Debian)

本文要点
  • Linux 桌面装 Clash Verge Rev 或 FlClash,服务器用 mihomo 命令行
  • 终端程序不跟随系统代理,需要设置 http_proxy 等环境变量
  • 用 systemd 后台运行 mihomo,控制端口只监听本机,不暴露到公网

一句话结论:有桌面的 Linux 直接装 Clash Verge Rev 或 FlClash 的 deb 包;服务器或没有桌面的环境,用 mihomo 命令行加 systemd 后台运行。两条路用的都是 mihomo 内核,同一个 Clash 订阅都能用。本文以 Ubuntu / Debian 为例,其他发行版思路相同,只是安装包格式不同。

1. Linux 使用机场:先选方案

方案适合环境优点缺点
Clash Verge Rev桌面版 Ubuntu / Debian功能全,覆写方便依赖桌面环境
FlClash桌面版,多设备统一界面简洁,与安卓一致进阶功能较少
mihomo 命令行服务器、树莓派、无桌面系统占用低、可长期后台运行需要手动编辑配置

2. Linux 图形客户端:安装与导入订阅

  1. 到 Clash Verge Rev 或 FlClash 的官方 GitHub Releases 页面下载 deb 包。普通电脑选 amd64,树莓派等 ARM 设备选 arm64。
  2. 在下载目录执行 sudo apt install ./文件名.deb,apt 会自动补齐依赖。
  3. 从应用菜单打开客户端,在订阅或配置页面粘贴机场的 Clash 订阅链接并导入,选中这份配置。
  4. 在代理页面选好节点,打开系统代理开关。

也可以选 AppImage 格式,下载后加执行权限直接运行,不需要安装,适合不想动系统包的情况。

注意:Linux 的“系统代理”通常只对 GNOME、KDE 等桌面环境的代理设置生效,浏览器一般会跟随,但终端里的命令默认不会,下面第 5 步会讲怎么处理。

如果客户端的系统代理开关打开后浏览器仍然不走代理,可以到桌面环境的设置里手动检查:GNOME 在“设置 → 网络 → 网络代理”中选择手动,HTTP、HTTPS 和 SOCKS 主机都填 127.0.0.1,端口填客户端显示的混合端口;KDE 在系统设置的代理页面里做同样的设置。Firefox 有自己独立的代理选项,确认它设为“使用系统代理设置”。用完代理后记得把这里改回“无”或“禁用”,否则客户端退出后浏览器会无法上网。

3. 命令行:下载 mihomo 内核

到 mihomo 官方 GitHub 仓库的 Releases 页面,下载对应架构的 Linux 压缩包(文件名一般包含 linux-amd64 或 linux-arm64,扩展名为 gz)。上传到服务器后执行:

  • gunzip mihomo-linux-amd64-*.gz 解压出可执行文件(文件名以实际下载为准)。
  • chmod +x mihomo-linux-amd64-* 加上执行权限。
  • sudo mv mihomo-linux-amd64-* /usr/local/bin/mihomo 移动到系统路径。
  • mihomo -v 能输出版本信息就说明安装成功。

不要用来路不明的一键脚本,脚本可能替换内核或上传你的订阅。发布页里常有多个同架构的文件,例如带 compatible 字样的兼容版,是给较老 CPU 准备的;普通电脑选标准版即可,运行时报“非法指令”一类错误再换兼容版。以后升级内核,只需下载新版本替换 /usr/local/bin/mihomo 并重启服务,配置文件不受影响;升级前先备份旧文件,出问题时直接换回。

4. 命令行:写入订阅配置并运行

  1. 新建配置目录:sudo mkdir -p /etc/mihomo。
  2. 下载订阅为配置文件:sudo curl -L -o /etc/mihomo/config.yaml '你的 Clash 订阅链接'。链接两侧的引号不能省,否则链接里的特殊字符会被 shell 误解析。
  3. 打开 config.yaml 检查开头几行,确认有 mixed-port(混合端口,常见为 7890)。如果没有,可以手动加一行 mixed-port: 7890。
  4. 前台试运行:sudo mihomo -d /etc/mihomo。首次启动会下载 GeoIP 等规则数据,看到端口监听成功的日志后按 Ctrl+C 退出。

订阅格式不是 Clash 时,先参考 订阅转换教程。配置文件里包含你的订阅节点信息,建议把目录权限收紧,只允许 root 读取,多人共用的服务器尤其要注意。另外,如果配置里开启了 allow-lan,其他机器也能连这个端口,服务器上务必保持关闭,或者至少用防火墙限制来源地址。

5. 设置终端与系统代理

命令行程序大多读取环境变量。在当前终端执行:

  • 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

想长期生效,把这几行写进 ~/.bashrc,再配合 unset http_proxy https_proxy all_proxy 随时关闭。apt 不一定读取这些变量,必要时在 /etc/apt/apt.conf.d/ 下单独设置代理。Docker 守护进程、git 等工具也各有自己的代理配置。如果嫌逐个设置麻烦,可以开启 TUN 模式:在配置里启用 tun 段,以 root 运行后所有流量都会被接管。

6. 用 systemd 后台运行与开机自启

新建文件 /etc/systemd/system/mihomo.service,核心内容如下:

  • [Unit] 段写 Description=mihomo 和 After=network-online.target
  • [Service] 段写 ExecStart=/usr/local/bin/mihomo -d /etc/mihomo 和 Restart=on-failure
  • [Install] 段写 WantedBy=multi-user.target

如果希望以普通用户而不是 root 运行,可以在 Service 段加上 User 字段,但这样开 TUN 时需要额外授予网络管理权限,新手直接用 root 运行更省事。

保存后执行 sudo systemctl daemon-reload,再执行 sudo systemctl enable --now mihomo。查看状态用 systemctl status mihomo,看日志用 journalctl -u mihomo -f。

订阅不会自动更新,可以写一个定时任务每天重新下载 config.yaml 后执行 sudo systemctl restart mihomo。切换节点可以在配置里开启 external-controller(只监听 127.0.0.1),再用官方的网页面板通过 SSH 端口转发访问,不要把控制端口直接暴露到公网。没有图形界面时,最方便的是打开 external-controller 后用网页面板选择;也可以在配置里把主策略组改成自动测速类型,让 mihomo 自己挑延迟最低的节点。

7. 怎么确认已经生效?

  1. 测试连通:执行 curl -I https://www.google.com,返回 200 或 301 等状态码说明代理通了;如果长时间无响应,说明环境变量没生效或节点不可用。
  2. 查出口 IP:用 curl 访问任一 IP 查询接口,返回的地区应与节点一致。
  3. 看日志:journalctl -u mihomo -f 中会实时出现连接记录和命中的规则。

如果 curl 能通但浏览器不通,问题在桌面代理设置;如果浏览器能通而 curl 不通,问题在终端环境变量。按这个思路分开排查,比反复重启服务更快找到原因。国内网站访问变慢时,检查是否误用了全局模式,规则模式下国内流量应当直连。

8. 其他发行版与常见环境的差异

前面的步骤以 Ubuntu / Debian 为例,换到其他环境时,主要差别在安装包格式和代理设置位置:

环境图形客户端安装需要注意
Fedora / openSUSE 等下载 rpm 包,用系统包管理器安装防火墙默认较严格,开局域网连接时要放行端口
Arch 及其衍生版用 AppImage,或社区仓库里的打包版本社区打包非官方维护,留意来源和更新时间
树莓派等 ARM 设备选 arm64 版本,老设备可能需要 armv7内存小,日志级别设为 warning
WSL2一般不装客户端,直接用 Windows 端代理代理地址要填 Windows 主机的 IP,而不是 127.0.0.1
云服务器只用 mihomo 命令行不要开 allow-lan,控制端口只监听本机

不管哪个发行版,内核和客户端都只从官方 GitHub 下载。遇到问题时先分清是“内核没跑起来”还是“程序没走代理”:前者看 systemd 状态和日志,后者看环境变量和桌面代理设置,按这两个方向排查基本都能解决。另外,订阅下载后只有几行或返回 403 时,可以在 curl 命令里用 -A 参数把客户端标识设为 clash 或 mihomo 再试一次。

更多问题见 机场常见错误排查,内核相关概念可以看 代理工作原理。

Linux 使用机场教程常见问题

Linux 怎么使用机场?

有桌面的系统直接安装 Clash Verge Rev 或 FlClash 的 deb、rpm 或 AppImage 包,导入 Clash 订阅即可;服务器或无桌面环境下载 mihomo 内核,把订阅保存为配置文件,再用 systemd 后台运行。

Linux 终端怎么走机场代理?

在终端执行 export 设置 http_proxy、https_proxy 和 all_proxy,指向 127.0.0.1 加混合端口。想长期生效就写进 ~/.bashrc。注意使用 sudo 时环境变量默认不会传递过去。

Linux 下载机场订阅得到一串乱码怎么办?

那是 Base64 编码的通用订阅,不是 mihomo 能直接读取的 Clash 格式。到机场后台改复制 Clash 订阅链接;如果机场只给通用订阅,先用订阅转换生成 Clash 配置。

Linux 上 mihomo 启动报错找不到规则数据?

首次启动需要下载 GeoIP 等规则数据,服务器直连下载失败就会报错。可以在本地电脑下载好这些文件,上传到配置目录 /etc/mihomo 后再重新启动服务。

Linux 服务器开了 TUN 后 SSH 断开怎么办?

TUN 接管了全部流量,包括 SSH 的回程。要在配置里让 SSH 来源地址或 22 端口走直连,最好先在本地虚拟机测试再上服务器,并保留云厂商控制台作为救援入口。

树莓派等 ARM 设备能用 mihomo 吗?

可以。下载 linux-arm64 版本,较老的 32 位系统选 armv7 版本,其余步骤与普通电脑完全相同。内存较小的设备建议把日志级别设为 warning,减少资源占用。

#Linux#客户端#mihomo