Linux 安装 Clash 全流程:桌面客户端与命令行 mihomo 部署
桌面用户用 Clash Verge Rev 的 deb 包三步装好,服务器与无界面环境用 mihomo 内核配 systemd 常驻。两条路线的安装、订阅导入与开机自启逐步写全。
Linux 上部署 Clash 的两条路线怎么选
Linux 生态没有官方统一的 Clash 桌面客户端,能用的方案分成两条完全不同的路线,选错工具会白折腾。第一条是图形化桌面路线:装一个带界面的客户端,像用 Windows/macOS 的 Clash 客户端一样点点鼠标切节点、导订阅,适合日常用桌面环境(GNOME、KDE 等)上网的场景。第二条是命令行内核路线:只装 mihomo(Clash Meta 内核的延续项目)这个单一可执行文件,靠配置文件和 systemd 服务常驻后台,适合云服务器、NAS、树莓派这类没有图形界面、需要 7×24 小时挂机的场景。
两条路线内核相通(桌面客户端底层调用的也是 mihomo/Clash Meta 内核),区别只在"要不要一个可以点的窗口"。判断标准很简单:
- 你在自己的笔记本或台式机上装了带桌面环境的 Linux 发行版(Ubuntu、Fedora、Debian 等),平时要切节点看状态 —— 走桌面客户端路线。
- 你在管理一台云服务器、家庭 NAS,或者只想让代理服务安静地跑在后台不折腾界面 —— 走 mihomo + systemd 路线。
下文按顺序把两条路线各写一遍,互相独立,按需跳读即可。
桌面环境:用 Clash Verge Rev 三步装好
Clash Verge Rev 是目前 Linux 桌面上维护活跃、界面完整的开源客户端,内核用的是 mihomo,支持 TUN 模式全局接管流量,发行的 deb 包直接适配 Debian/Ubuntu 系发行版。以下是完整流程。
第一步:下载对应架构的 deb 包
确认你的系统架构再下载,大多数台式机/笔记本是 amd64,部分 ARM 设备(如某些 ARM 笔记本)要选 arm64 包。命令行确认架构:
uname -m
# x86_64 对应 amd64 包
# aarch64 对应 arm64 包
确认好架构后,到本站下载页获取对应的 deb 安装包链接。
第二步:安装 deb 包
下载完成后用 apt 或 dpkg 安装,推荐用 apt,它会自动处理依赖关系:
cd ~/Downloads
sudo apt install ./clash-verge-rev_amd64.deb
如果系统提示缺少依赖(常见于纯净版 Debian),先执行:
sudo apt --fix-broken install
再重新安装一次即可。安装成功后,应用会出现在应用菜单里,也可以直接在终端敲客户端名字启动。
第三步:导入订阅并开启系统代理
打开客户端后按下面顺序操作:
- 进入「订阅」页面,粘贴机场提供的订阅链接,点击下载,等待节点列表拉取完成。
- 切换到「代理」页面,选一个延迟较低的节点组,或直接使用自动测速的策略组。
- 在「设置」里打开系统代理开关,或者按需开启 TUN 模式(需要输入密码授权,TUN 会接管全局流量,包括不支持设置代理的应用)。
服务器/无界面环境:mihomo 内核 + systemd 常驻
没有图形界面的机器(云服务器、NAS、路由器级设备)不需要装完整客户端,只装 mihomo 单文件内核,配好 YAML 配置,交给 systemd 管理生命周期即可。这条路线的好处是资源占用低、断线自动重启、开机即用。
第一步:下载并放置 mihomo 二进制
确认架构后从项目发布页获取对应压缩包,解压后得到一个可执行文件,重命名并放到系统路径下:
tar -zxvf mihomo-linux-amd64.tar.gz
sudo mv mihomo-linux-amd64 /usr/local/bin/mihomo
sudo chmod +x /usr/local/bin/mihomo
验证是否可执行:
mihomo -v
能看到版本号输出即表示二进制放置成功。
第二步:准备配置目录与订阅文件
mihomo 默认读取 /etc/mihomo/config.yaml,先建好目录:
sudo mkdir -p /etc/mihomo
sudo curl -o /etc/mihomo/config.yaml "你的订阅链接"
如果订阅链接本身不是标准 Clash YAML 格式(部分机场提供的是 Base64 编码的通用格式),需要先在支持转换的客户端里生成 Clash 格式链接,再用上面的命令下载,避免 mihomo 解析失败。
第三步:手动测试运行
先不接入 systemd,直接前台运行一次,确认配置文件没问题:
mihomo -d /etc/mihomo
观察终端输出,若看到监听端口(默认混合端口 7890)和代理组加载成功的日志,按 Ctrl+C 停止,再进入下一步。若报错,多半是配置文件格式或订阅内容有问题,回头检查 YAML 缩进与订阅是否过期。
第四步:写 systemd 服务单元
创建服务文件:
sudo nano /etc/systemd/system/mihomo.service
内容如下:
[Unit]
Description=mihomo Daemon
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/mihomo -d /etc/mihomo
Restart=on-failure
RestartSec=5
User=root
[Install]
WantedBy=multi-user.target
保存退出后,重新加载 systemd 并启动服务:
sudo systemctl daemon-reload
sudo systemctl start mihomo
sudo systemctl status mihomo
status 显示 active (running) 即代表服务正常拉起。
| 常用 systemd 命令 | 作用 |
|---|---|
systemctl start mihomo | 启动服务 |
systemctl stop mihomo | 停止服务 |
systemctl restart mihomo | 重启服务(改配置后用这条) |
journalctl -u mihomo -f | 实时查看运行日志 |
订阅导入与规则更新的两种写法
无论走哪条路线,订阅内容都会过期或需要按机场规则定期刷新,这里分开说明两种环境下的更新方式。
桌面客户端里的订阅管理
Clash Verge Rev 支持给每条订阅设置自动更新间隔,在订阅列表里点击编辑,填入更新周期(单位小时),客户端会按周期自动重新拉取订阅内容,无需手动干预。也可以随时点击订阅条目上的刷新按钮手动更新一次。
命令行环境里的订阅刷新
mihomo 没有图形界面,更新订阅本质就是重新下载配置文件覆盖旧文件,再重启服务生效。可以写一条简单的更新脚本:
#!/bin/bash
curl -o /etc/mihomo/config.yaml "你的订阅链接"
systemctl restart mihomo
把这段脚本存成 update-sub.sh,配合 crontab -e 加一条定时任务,就能实现无人值守的定期刷新,例如每天凌晨 4 点执行一次:
0 4 * * * /bin/bash /root/update-sub.sh
开机自启与常见故障排查
两条路线的开机自启配置方式不同,分别说明。
桌面客户端的开机自启
Clash Verge Rev 在设置页里通常提供「开机启动」开关,打开即可让客户端随桌面环境登录自动拉起。如果所用的发行版桌面环境没有正确响应这个开关(部分小众窗口管理器会漏掉自启动项),可以手动在系统的启动应用管理里添加客户端的可执行文件路径作为补充。
mihomo 服务的开机自启
用 systemd 管理的服务,执行一次启用命令即可让它随系统开机自动拉起,不需要额外配置:
sudo systemctl enable mihomo
之后重启服务器验证,重启后执行 systemctl status mihomo 确认状态为 active,即代表自启配置成功。
把界面和命令行两条路线都摸清楚之后,后续无论是自己电脑上临时切节点,还是给一台常年在线的服务器配代理出口,都能按同一套逻辑照做:先确认架构与依赖,再导入订阅,最后把自启动这一步补上,拧错了拆回上一步重来就行。