本文快速導覽

本文說明安裝 Shadowrocket Linux 版前,如何確認發行版與處理器架構、使用本機安裝指令安裝 deb 或 rpm、為 AppImage 設定執行權限,以及首次啟動後的設定檢查。適合已有服務商資料或訂閱,想在 Linux 桌面安裝用戶端的使用者。請先確認系統與安裝檔相符,再處理相依套件;應用程式能啟動與連線成功,是兩個不同的檢查階段。

一、先確認發行版、架構與套件格式

Shadowrocket(小火箭)的 Linux 安裝檔請從本站全平台下載頁選取。deb、rpm、AppImage 是不同的發佈格式,並不代表代理協定或線路方案不同。不要只憑桌面外觀判斷發行版:GNOME、KDE 是桌面環境,不能據此決定使用 apt 或 dnf。

先在終端機執行以下兩個唯讀指令。第一個查看系統識別資訊,第二個查看處理器架構。分享輸出內容以便排查時,通常只需提供發行版名稱、架構與錯誤訊息,不必提供帳戶資訊。

cat /etc/os-release
uname -m

辨識系統

NAME / ID
讀取 /etc/os-release,確認實際的發行版名稱。
ID_LIKE
輔助判斷發行版家族,不能取代該發行版的套件管理說明。
uname -m
x86_64 與 aarch64 代表不同架構,安裝檔必須相符。

請以下載頁實際提供的架構為準;更換套件格式無法解決架構不相符的問題。

選擇套件格式

Debian / Ubuntu
優先選擇 deb,並使用 apt 安裝本機檔案及處理相依套件。
Fedora 系
優先選擇 rpm,並使用 dnf 安裝本機檔案及處理相依套件。
其他發行版
查看 AppImage 相容性說明,並確認架構與執行環境。

AppImage 仍受系統程式庫、桌面環境與執行階段條件限制,並非適用於所有 Linux 系統。

如果系統執行於容器、沒有圖形桌面的伺服器或遠端終端機,安裝成功也不代表具備執行桌面應用程式的條件。請先確認目前工作階段能啟動圖形程式,再繼續處理用戶端。本文說明適用於 Linux 桌面環境,不應將桌面應用程式的安裝步驟當成伺服器服務部署流程。

二、Debian/Ubuntu:使用 apt 安裝本機 deb 檔

在下載頁選取符合架構的 deb 檔,並記下下載檔案的完整路徑。以下指令請在 Bash 中逐行執行;出現提示後輸入實際的絕對路徑,例如從檔案管理員複製路徑再貼上,請勿在輸入內容外另外加上引號。程式碼中的變數會接收實際檔案路徑,因此不必猜測安裝檔名稱。

read -r -p "請輸入 deb 檔案的絕對路徑: " deb_path
dpkg-deb -f "$deb_path" Package Architecture
sudo apt update
sudo apt install "$deb_path"

dpkg-deb -f 會讀取套件內的中繼資料,不會執行安裝。常見的架構對應方式是:系統回報 x86_64 時,查看套件是否標示 amd64;系統回報 aarch64 時,查看是否標示 arm64。最後仍須確認與下載頁提供的套件相符。若欄位明顯不符,請停止安裝並重新選擇。

不建議將 dpkg -i 出現相依套件錯誤,解讀為應用程式已可使用。dpkg 負責管理套件的安裝狀態,但不像 apt 會主動從軟體來源解析並取得相依套件。安裝結束後,請確認終端機沒有留下套件未設定完成的錯誤,再從桌面應用程式清單啟動 Shadowrocket。

三、Fedora 系:使用 dnf 安裝本機 rpm 檔

rpm 套件也要先確認架構,不能只看副檔名。Fedora 系通常使用 dnf 處理本機 rpm 及其相依套件。其他採用 rpm 的發行版可能使用自己的套件管理工具,且相依套件名稱也可能不同;不要只因副檔名相同,就直接套用 Fedora 的軟體來源設定。

read -r -p "請輸入 rpm 檔案的絕對路徑: " rpm_path
rpm -qp --queryformat '%{NAME} %{ARCH}\n' "$rpm_path"
sudo dnf install "$rpm_path"

查詢指令只會顯示套件名稱與架構,方便核對下載結果。dnf 的交易確認畫面會列出即將安裝的項目及相依套件來源。只有在套件來自本站下載頁、架構相符且相依套件處理計畫合理時才繼續;若發生套件衝突,請保留錯誤輸出,不要使用略過相依套件或強制覆寫的參數來掩蓋問題。

  1. 出現 No such file or directory 時,請先確認輸入的是檔案實際路徑,而不是瀏覽器下載清單顯示的名稱。
  2. 若無法滿足相依套件,請檢查目前發行版的軟體來源與相容性要求,不要任意從其他發行版複製系統程式庫。
  3. 安裝完成後,請以一般使用者身分啟動圖形應用程式;安裝時使用 sudo,不代表執行應用程式也需要 sudo。

四、AppImage:授予執行權限後從終端機啟動

AppImage 通常不會透過 apt 或 dnf 註冊安裝。請先將檔案移至目前使用者可寫入且會長期保留的位置,再新增執行權限。若檔案仍放在瀏覽器的暫存目錄,清理下載檔案後可能就無法再次啟動;移動檔案後,原有的桌面捷徑也可能需要更新路徑。

read -r -p "請輸入 AppImage 檔案的絕對路徑: " app_path
chmod u+x "$app_path"
"$app_path"

chmod u+x 只會為檔案擁有者新增執行權限。最後一行會直接執行該檔案;終端機能保留啟動錯誤,適合用來排查按兩下後沒有視窗的情況。請勿使用 sudo 啟動整個桌面用戶端,也不要將擴大檔案權限當成通用的修復方法。

AppImage 檔案不會因為取得執行權限,就自動成為系統服務;也不能據此推斷它具備自動更新或整合桌面選單的功能。需要更新時,請回到下載頁查看取得方式,先結束正在執行的執行個體,再依該套件的說明替換檔案。

五、首次啟動:分開排查安裝與連線問題

視窗能開啟,表示已通過部分本機執行檢查;若此時無法瀏覽網頁,應改為檢查連線資料、路由模式與系統網路設定,而不是立刻更換套件重裝。以下流程以使用者已有自己的服務商與訂閱為前提。訂閱網址可能包含存取憑證,分享截圖或記錄檔前請遮蔽完整連結。

  1. 檢查啟動狀態

    從應用程式清單或 AppImage 檔案啟動 Shadowrocket,確認視窗能持續開啟。若程式立即結束,請先在終端機重現並記錄錯誤,不要開始排查訂閱。

  2. 匯入資料

    使用 Home → + → Type → Subscribe,輸入自己的訂閱網址並儲存。網址格式範例如 https://example.com/sub?token=xxxx,僅供格式參考,不能用來連線;實際入口請以目前 Linux 版本的介面為準。

  3. 檢查設定

    確認訂閱更新後,清單中出現預期項目;接著前往 Config 核對目前設定及其策略引用。訂閱取得失敗與現有連線項目無法使用是兩種不同問題,請分別保留錯誤訊息。

  4. 確認路由模式

    在 Home → Global Routing 確認目前選取的模式。若要驗證設定規則,請使用 Config,並確認設定中的策略名稱有效;不要在 Direct 模式下判斷代理連線是否生效。

上述 Home、Config 和 Global Routing 可用來找到相應功能;不同平台版本的入口呈現方式可能不同,不要為了尋找某個行動版選單而反覆安裝 Linux 套件。系統代理與應用程式內的路由也屬於不同層級:只有實際進入用戶端處理範圍的連線才會受其路由模式影響,不能僅憑用戶端開關就推斷所有裝置流量都已由其接管。

六、安裝後如何選擇 Global Routing

套件格式不會改變規則的比對原則。完成安裝後,可透過 Global Routing 區分「連線本身有問題」或「設定規則未命中」。以下僅比較 Shadowrocket 本身的路由模式;測試前請確認已匯入自己的有效連線資料。

Config

建議

依目前設定中的規則與策略處理連線。規則不代表所有連線一律走代理,實際結果取決於命中的規則、策略目標,以及設定中的預設處理方式。

適用情境:已有確認過的設定,日常需要依規則處理連線。

Proxy

將進入用戶端處理範圍的連線交由所選代理策略處理,可減少規則比對對排查的干擾;但不代表作業系統中的所有流量必然都會由其接管。

適用情境:短時間測試所選連線與設定規則之間的差異。

Direct

對進入用戶端處理範圍的連線採用直接連線。此模式不會修復 DNS、系統防火牆或實體網路,也不能用來證明代理連線可用。

適用情境:比對並檢查本機網路是否可連線,排除代理路徑的影響。

如果在 Proxy 模式下可以存取,但在 Config 模式下失敗,請在 Config 中檢查規則順序與策略引用,不必重裝 deb 或 rpm。DOMAIN-SUFFIX 依網域後綴比對,IP-CIDR 依 IP 位址網段比對,GEOIP 依位址歸屬資料比對,FINAL 用於預設處理;這些規則的效果仍取決於實際設定與連線資料。

七、安裝與更新常見問題

deb 已下載,為什麼 apt 還是說找不到套件?

先確認傳給 apt 的是本機檔案路徑。請使用完整絕對路徑,或進入檔案所在目錄後使用以 ./ 開頭的相對路徑。只輸入檔名可能會被視為軟體來源中的套件名稱;也請確認瀏覽器已完成下載。

AppImage 按兩下沒有反應,需要重新下載嗎?

請先在終端機執行本文的授權與啟動指令,區分執行權限、架構與執行階段錯誤。若錯誤指向 FUSE 或 GLIBC,請處理相應的環境條件;重複下載相同檔案通常無法改變系統相依套件。

升級時可以從 deb 改用 AppImage 嗎?

請先使用應用程式提供的匯出功能備份設定,再結束舊執行個體。不同套件格式的設定位置、啟動入口與桌面整合方式可能不同,請勿假設設定會自動遷移。確認新執行個體可正常使用後,再決定是否移除舊套件,以免不小心同時啟動兩個執行個體。

已安裝成功,訂閱卻一直更新失敗?

請確認完整訂閱網址、網路連線狀態及服務商回傳的錯誤;不要在終端機或公開記錄檔中洩露 token。若視窗能正常啟動且可讀取本機設定,請優先排查訂閱取得流程,不要將網路逾時歸因於套件格式。

回報安裝問題時,建議整理發行版名稱、uname -m 輸出、所選套件格式、已執行的指令及完整錯誤訊息。不要臆測應用程式的安裝目錄或可執行檔名稱,也不要在問題說明中直接附上含有密碼、PrivateKey 或訂閱 token 的設定。