· 平台部署 · 約 10 分鐘

Linux 安裝與登入自動啟動

在 Ubuntu、Debian、Fedora 等 Linux 發行版上,使用 deb 或 rpm 套件安裝 v2rayN,處理相依套件與權限,並設定登入桌面後自動啟動。

本文重點

本文適用於使用 Linux 圖形桌面的 v2rayN 使用者。請依發行版與處理器架構選擇安裝套件,透過套件管理工具處理相依套件,再以一般使用者身分完成首次連線與桌面自動啟動設定。請留意「系統開機」與「使用者登入」的差異:本文設定的是登入圖形桌面後啟動用戶端,不是在無人登入時以系統服務執行。

先確認發行版與處理器架構

v2rayN 是桌面用戶端,可管理節點、訂閱與核心程序。deb、rpm 是套件格式,與節點協定無關。能否使用 VMess 或 VLESS 節點,還取決於所選核心、傳輸參數及伺服器設定。安裝前請先確認本機環境,協定錯誤不能靠更換套件格式解決。

cat /etc/os-release
uname -m
printf '桌面:%s\n工作階段:%s\n' "$XDG_CURRENT_DESKTOP" "$XDG_SESSION_TYPE"

Ubuntu / Debian

套件格式
deb
套件管理工具
apt
x86_64 對應
通常標示為 amd64 或 x64
aarch64 對應
通常標示為 arm64

請以 deb 套件的 Architecture 欄位及本機架構為準。

Fedora

套件格式
rpm
套件管理工具
dnf
x86_64 對應
x86_64
aarch64 對應
aarch64

amd64 並非只適用於特定處理器品牌,而是代表一種架構。

請前往用戶端下載頁,查看 Linux 安裝說明並選擇相符的處理器架構。本文不固定指定版本號與安裝套件檔名,以免升級後命令仍指向舊檔案。以下命令以 Bash 撰寫;執行時請輸入已下載檔案的實際路徑。路徑含空格也能使用,但輸入時不要額外加上引號。

使用套件管理工具安裝 deb 或 rpm

安裝本機套件時,建議優先使用發行版的套件管理工具解析相依套件。Ubuntu、Debian 使用 apt install,Fedora 使用 dnf install。若無法連線至軟體來源,相依套件解析也可能失敗;此時應先修復軟體來源的網路連線,不要強行略過相依套件。

  1. 確認套件路徑

    在檔案管理員中找到下載的檔案並複製完整路徑。在終端機輸入路徑後,使用下列命令查看套件名稱、版本與架構,確認檔案適用於目前的發行版。

  2. 開始安裝

    請只執行適用於目前發行版的命令組。查看套件管理工具列出的相依套件變更後,再確認安裝;若計畫移除大量桌面元件,請先取消並檢查是否混用了不同的軟體來源。

  3. 首次啟動

    從桌面應用程式選單開啟 v2rayN。安裝時使用管理員權限,日常執行則使用一般使用者身分,兩者不可混淆。先保持視窗開啟,確認沒有核心啟動錯誤,再設定登入時自動啟動。

Ubuntu/Debian:安裝 deb 套件

read -r -p '輸入 deb 檔案的完整路徑:' pkg
pkg="$(realpath -- "$pkg")"
dpkg-deb -f "$pkg" Package Version Architecture
sudo apt install "$pkg"

使用本機絕對路徑,是為了明確告訴 apt 安裝磁碟上的檔案,而不是依名稱搜尋軟體來源。如果先前使用 dpkg -i 留下尚未設定的套件,可先執行 sudo apt --fix-broken install,檢查修復計畫後再確認。不要將強制忽略相依套件當成一般安裝步驟。

Fedora:安裝 rpm 套件

read -r -p '輸入 rpm 檔案的完整路徑:' pkg
pkg="$(realpath -- "$pkg")"
rpm -qp --queryformat '%{NAME} %{VERSION}-%{RELEASE} %{ARCH}\n' "$pkg"
sudo dnf install "$pkg"

先測試連線,再設定自動啟動

安裝成功只代表程式檔案已部署。首次開啟後,請先新增訂閱或匯入節點,再選擇節點測試連線。不同版本的選單分類可能有所調整;常見路徑是「訂閱分組」→「訂閱分組設定」,接著在「訂閱分組」選單中執行更新。若目前介面的文字不同,請以實際版本的選單為準,不要尋找其他平台用戶端名稱相同的按鈕。

127.0.0.1
本機代理測試位址
10808
下方命令使用的範例監聽連接埠
15 秒
單次請求的逾時上限

前往「設定」→「參數設定」,查看本機監聽連接埠與監聽類型。這裡的 10808 僅為測試範例,不保證是所有版本的預設值;以下命令以該連接埠提供 SOCKS 或混合式入站為前提,執行前務必核對實際設定。先確認連接埠正在監聽,再不經桌面系統代理設定,明確指定代理進行一次請求測試。

ss -ltnp 'sport = :10808'
curl --proxy socks5h://127.0.0.1:10808 \
  --connect-timeout 5 --max-time 15 \
  --head https://example.com/

socks5h 表示將目標網域交由代理端解析。這能減少本次測試對應用程式本機解析的依賴,但不能只憑這一次請求,就判定整個系統的 DNS 或所有應用程式流量都已依預期分流。

選擇登入時自動啟動的方式

桌面用戶端依賴使用者工作階段。日常桌面使用時,XDG 自動啟動檔案比建立系統層級服務更符合需求。它會在使用者登入圖形桌面時生效,不會讓用戶端在登入畫面出現前自動執行。以下兩種方式擇一即可,避免登入後同時啟動兩個執行個體。

XDG 桌面自動啟動

建議

將已安裝的桌面啟動檔案複製到使用者的 autostart 目錄,保留套件提供的啟動命令、參數與圖示資訊。可直接檢查目錄內容,也方便還原設定。

適用對象:需要檢查設定並可移轉設定的 Linux 桌面使用者。

桌面設定介面

KDE Plasma 可在「系統設定」→「自動啟動」→「新增」中選擇「新增應用程式」,再選取 v2rayN。分類與按鈕文字會依 Plasma 版本而異;新增後請確認是否已有同名項目。

適用對象:希望透過桌面設定管理啟動項目的使用者。

如果目前版本的 v2rayN 已提供並啟用自動啟動選項,請先確認它實際建立的啟動項目,再決定是否使用本文的手動方式。不要同時保留用戶端自行建立、桌面設定建立及手動複製的啟動項目。關閉視窗後仍在系統匣執行,不代表已設定下次登入時自動啟動。

建立方便檢查的自動啟動檔案

先找出安裝套件提供的 .desktop 檔案,不要猜測程式一定位於某個固定目錄。以下查詢方式分別適用於 deb 與 rpm;請輸入安裝時確認的套件名稱。輸出結果中,優先選擇 /usr/share/applications/ 下對應 v2rayN 的主要啟動檔案。

查詢桌面啟動項目

# Ubuntu / Debian
read -r -p '輸入 deb 的 Package 欄位值:' package
dpkg -L "$package" | grep -E '/applications/[^/]+\.desktop$'

# Fedora:僅在 Fedora 上執行這一組
read -r -p '輸入 rpm 的 NAME 欄位值:' package
rpm -ql "$package" | grep -E '/applications/[^/]+\.desktop$'

以下使用 desktop-file-edit 編輯鍵值。Ubuntu、Debian 可執行 sudo apt install desktop-file-utils,Fedora 可執行 sudo dnf install desktop-file-utils 安裝所需工具。接著以一般使用者身分執行複製,不要在以下命令前加上 sudo。

read -r -p '輸入已安裝 desktop 檔案的完整路徑:' source
test -f "$source" && grep -E '^(Name|Exec|TryExec|DBusActivatable)=' "$source"

autostart_dir="${XDG_CONFIG_HOME:-$HOME/.config}/autostart"
target="$autostart_dir/v2rayn-login.desktop"

mkdir -p "$autostart_dir"
cp -- "$source" "$target"

desktop-file-edit \
  --remove-key=Hidden \
  --remove-key=OnlyShowIn \
  --remove-key=NotShowIn \
  --remove-key=DBusActivatable \
  --set-key=X-GNOME-Autostart-enabled --set-value=true \
  "$target"

desktop-file-validate "$target"

複製前請確認查詢結果確實指向目標程式,且 Exec= 是有效的啟動命令。此處沿用套件內的 Exec,移除桌面環境的顯示限制,並讓啟動項目直接執行命令,而非依賴 D-Bus 啟動。如果原始檔案包含 TryExec,其指向的程式也必須存在,否則桌面環境可能略過此啟動項目。

工具沒有輸出通常表示格式檢查已通過,但不代表程式一定能執行。儲存後請先正常結束用戶端,再登出桌面並重新登入;只重新開啟終端機無法驗證登入時的自動啟動。登入後等待桌面載入,檢查視窗、系統匣與本機連接埠,確認只啟動了一個執行個體。

相依套件、權限與登入問題排解

安裝時提示缺少相依套件,可以強制安裝嗎?

請先確認套件架構,再檢查軟體來源是否已啟用且可連線。Ubuntu、Debian 使用 apt 安裝本機 deb;Fedora 使用 dnf 安裝本機 rpm。如果目前發行版無法提供所需版本的程式庫,請核對該安裝套件的系統需求,不要任意將其他發行版的共享程式庫複製到系統目錄。

點擊圖示後沒有視窗,如何找出錯誤?

先確認程式是否已縮到系統匣,再查看桌面檔案的 Exec=。在一般使用者的終端機中,依照實際程式路徑與參數啟動;移除桌面檔案專用的 %U 等欄位代碼,並查看標準錯誤輸出。介面無法啟動與核心啟動失敗是兩個不同層面的問題,應分開處理。

手動可以開啟,登入後卻沒有自動啟動?

確認 autostart 檔案屬於目前登入的使用者,核對 Exec、TryExec,並檢查是否還留有 Hidden=true。可使用 journalctl --user -b 查看目前開機週期的使用者記錄;搜尋程式名稱或實際的可執行檔名稱,不要只依視窗是否出現來判斷。

登入後程式已執行,連線卻逾時?

先等網路連線就緒,再手動重試同一個節點。桌面自動啟動不保證網路已可用,訂閱更新失敗也不代表現有節點一定失效。重新執行明確指定代理的測試,區分網路尚未就緒、節點無法連線,以及應用程式未讀取系統代理設定等情況。

之前使用 sudo 啟動,現在無法儲存?

先結束用戶端,找出記錄中實際發生錯誤的使用者資料目錄,並使用 ls -ld 檢查擁有者。只有確認該目錄是目前使用者的用戶端資料後,才修正其擁有權;不要遞迴變更整個家目錄或系統安裝目錄的權限。透過套件部署的系統檔案仍應交由套件管理工具管理。

升級與取消自動啟動

升級時仍應使用適用於該發行版的本機安裝命令,並先結束正在執行的用戶端。安裝新版通常不會刪除使用者設定,但升級前仍建議備份實際使用的資料目錄,尤其是訂閱分組、路由與自訂設定。請以目前版本的設定或記錄為準確認目錄位置,不要認定程式安裝目錄就是唯一的資料目錄。

若只想停止登入時自動執行,不必解除安裝 v2rayN。刪除本文建立的啟動檔案即可;若另有桌面設定或用戶端建立的啟動項目,也須在對應位置停用。取消自動啟動不會自動結束目前已在執行的程序。

autostart_dir="${XDG_CONFIG_HOME:-$HOME/.config}/autostart"
rm -f -- "$autostart_dir/v2rayn-login.desktop"
用戶端與安裝套件