Clash Meta 下載站mihomo 用戶端下載

mihomo macOS 命令列使用教學

安裝教學 2026 年 6 月 20 日 4 分鐘閱讀
本文目錄

這篇教學寫給想直接和核心打交道的 macOS 使用者:不裝圖形客戶端,改用終端機執行 mihomo,設定檔自己管。適合拿來偵錯設定、在長期開機的 Mac 上跑一份常駐代理,或單純想弄清楚圖形客戶端背後究竟做了什麼。

先講結論:日常上網其實不必走這條路,Clash Verge Rev 內建的就是同一顆 mihomo 核心,裝完點兩下就能用。命令列版本換來的是透明度——每一個參數、每一行日誌都攤在你眼前,出狀況時不必用猜的。

本站提供 mihomo v1.19.29 的 macOS amd64 與 arm64 兩種 .gz 壓縮檔。解壓縮後就是一個單一執行檔,沒有安裝程序,也不會把檔案散落在系統各處;要移除時直接刪掉那個檔案,等於完成解除安裝。

先確認晶片:Intel 選 amd64,Apple Silicon 選 arm64

2020 年之後的 Mac 陸續換上 Apple 自家的 M 系列晶片(arm64 架構),在那之前則是 Intel 處理器(x86_64,也就是 amd64)。點左上角蘋果選單 →「關於這台 Mac」,「晶片」那一欄寫著 Apple M 開頭就選 arm64,寫著 Intel 就選 amd64。用終端機確認更快:

uname -m

輸出 arm64 對應 arm64 版本,輸出 x86_64 對應 amd64 版本。Intel 的 Mac 無法執行 arm64 原生程式;Apple Silicon 雖然可以透過 Rosetta 2 轉譯執行 amd64 程式,但沒有理由白白付出轉譯的代價。兩者的來龍去脈可以看Intel 與 Apple Silicon 的差別。確認完再到下載中心 macOS 分頁取得對應架構的 mihomo 壓縮檔。

解壓縮、給執行權限、清除隔離屬性

下載回來的是單檔 .gz 壓縮,用系統內建的 gunzip 就能處理。以 Apple Silicon 版本為例(檔名以你實際下載到的為準):

cd ~/Downloads
gunzip mihomo-darwin-arm64-v1.19.29.gz
chmod +x mihomo-darwin-arm64-v1.19.29
xattr -d com.apple.quarantine mihomo-darwin-arm64-v1.19.29

三行指令各有分工:gunzip 解壓縮並拿掉 .gz 副檔名;chmod +x 給予執行權限,少了這步會回 Permission denied;最後一行清除 Gatekeeper 貼上的隔離屬性(quarantine),否則第一次執行可能被擋下來,跳出無法驗證開發者的警告。如果這個檔案本來就沒有隔離屬性,xattr 會回報找不到該屬性,屬於正常情況,忽略即可。

說明:清除隔離屬性等於由你自己承擔來源可信度的判斷,只對確定來源的開源軟體這樣做。mihomo 的原始碼與正式發布都在 MetaCubeX/mihomo,需要時可以自行比對。

安放位置、設定檔與啟動指令

把執行檔改個好記的名字並移到 /usr/local/bin,之後在任何路徑都能直接輸入 mihomo;設定檔另外放一個資料夾,日後備份或同步都方便:

sudo mv mihomo-darwin-arm64-v1.19.29 /usr/local/bin/mihomo
mkdir -p ~/.config/mihomo

接著把 config.yaml 放進 ~/.config/mihomo。內容可以直接使用訂閱連結回傳的 YAML——訂閱本身就是一份完整設定,存成檔案就能用;也可以自己從零寫一份,欄位結構與最小可用範例見 mihomo 設定檔入門。準備好之後先檢查再啟動:

mihomo -t -f ~/.config/mihomo/config.yaml
mihomo -d ~/.config/mihomo

-t 只檢查設定不啟動,寫錯時會指出行號與原因,是省時間的好習慣;-d 指定資料目錄,核心會讀取該目錄下的 config.yaml,並把規則資料庫等檔案一併放在那裡。啟動後日誌直接印在視窗中,關掉終端機視窗核心就停止。

驗證代理到底有沒有在運作

核心啟動後會在本機監聽混合連接埠(以設定檔中的 mixed-port 為準,常見為 7890 或 7897)。用下面兩行確認,把 7890 換成你的實際連接埠:

curl -x http://127.0.0.1:7890 -I https://www.example.com
lsof -nP -iTCP:7890 -sTCP:LISTEN

第一行能回傳 HTTP 回應標頭,代表整條代理鏈路是通的;第二行用來確認連接埠確實處於監聽狀態。想讓瀏覽器等一般軟體也走這個代理,可以到「系統設定 → 網路 → 目前的網路服務 → 詳細資訊 → 代理伺服器」手動填入 127.0.0.1 與連接埠(不同 macOS 版本的路徑名稱略有出入);純命令列工具則另外設定 http_proxyhttps_proxy 環境變數。

用 launchd 讓核心常駐背景

macOS 的常駐機制是 launchd。在 ~/Library/LaunchAgents/ 建立一個 plist 檔(例如 local.mihomo.plist),內容大致如下,路徑換成你自己的:

<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>local.mihomo</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/bin/mihomo</string>
    <string>-d</string>
    <string>/Users/yourname/.config/mihomo</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>KeepAlive</key>
  <true/>
</dict>
</plist>

存檔後載入,之後每次登入都會自動啟動:

launchctl load -w ~/Library/LaunchAgents/local.mihomo.plist
launchctl list | grep mihomo

要停用就把 load 換成 unload。不同 macOS 版本的 launchctl 子指令略有差異(較新的系統改用 bootstrapbootout),這裡給的是通用寫法,當成範本調整即可。

什麼時候該回頭用圖形客戶端

命令列部署適合折騰設定、偵錯,以及長期無人值守的機器;如果你會頻繁切換節點、看流量統計、開開關關 TUN 模式,圖形客戶端還是順手得多,而且內建的就是同一顆核心,兩邊的設定觀念完全互通,學會其中一邊等於兩邊都會。想把相同做法搬到伺服器上長期執行,接著讀 mihomo Linux 伺服器部署教學,那篇用 systemd 完成同樣的常駐需求。