v2rayN Linux 版安裝教學:deb/rpm 套件安裝與登入後自動啟動設定

適用於 Ubuntu、Debian、Fedora 等桌面版 Linux,帶你安裝 deb/rpm 套件、首次啟動、設定系統代理及登入後自動啟動。

本文重點

先確認 Linux 發行版與處理器架構,再用套件管理工具安裝合適的桌面套件,接著匯入訂閱、確認本機監聽連接埠並測試系統代理。最後透過桌面工作階段的自動啟動機制,在登入後啟動程式;這和電腦開機、尚未登入時執行背景服務不同。本文以一般使用者的桌面工作階段為目標,不必先啟用 TUN。

一、下載前確認發行版、架構與套件格式

v2rayN 是用來管理節點、訂閱與核心設定的桌面用戶端。Linux 安裝套件必須同時符合發行版的套件管理系統與 CPU 架構。Ubuntu、Debian 通常使用 deb,Fedora 通常使用 rpm;即使副檔名相同,也不代表適用於所有發行版,請一併確認下載說明中的系統需求。

# 查看發行版與處理器架構
cat /etc/os-release
uname -m

# Debian / Ubuntu 的套件架構
dpkg --print-architecture

# Fedora 的套件架構
rpm --eval '%{_arch}'

請依照發行版選擇要執行的指令,不必全部執行。x86_64 通常對應下載頁面的 x64;Debian 套件常標示為 amd64;aarch64 通常對應 ARM64。請勿將 Windows 套件用於 Linux 桌面,也不要只憑電腦品牌判斷架構。前往下載中心選擇 Linux 平台,並以頁面當下提供的套件格式為準。

Ubuntu / Debian

套件格式
deb
本機安裝
apt install
套件資訊
dpkg-deb -f
已安裝檔案
dpkg -L

優先使用 apt 處理相依套件,不要只解壓縮套件就當作安裝完成。

Fedora

套件格式
rpm
本機安裝
dnf install
套件資訊
rpm -qip
已安裝檔案
rpm -ql

請使用符合目前發行版的版本;若缺少相依套件,先查看具體錯誤訊息。

二、使用 apt 或 dnf 安裝本機套件

請在 Bash 終端機中執行以下指令,輸入已下載安裝套件的完整路徑,不要貼上下載頁面的網址;路徑含空格也能正常處理。範例不固定套件名稱,避免版本更新後仍照抄舊檔名。安裝時會要求管理員權限,但日常啟動用戶端應使用一般使用者帳號。

Ubuntu / Debian:安裝 deb

read -r -e -p "請輸入 deb 檔案的完整路徑:" package_file
package_file="$(realpath -- "$package_file")"

if [ -f "$package_file" ]; then
  dpkg-deb -f "$package_file" Package Version Architecture
  sudo apt update
  sudo apt install "$package_file"
else
  printf '%s\n' "找不到檔案,請確認路徑後再試一次。"
fi

使用 apt install 安裝本機檔案時,apt 會根據已設定的軟體來源解析相依套件。若出現相依套件無法滿足的訊息,請先確認發行版版本、架構與軟體來源狀態;反覆強制安裝無法補齊執行環境。apt update 只會更新軟體來源索引,不會升級整台電腦。

Fedora:安裝 rpm

read -r -e -p "請輸入 rpm 檔案的完整路徑:" package_file
package_file="$(realpath -- "$package_file")"

if [ -f "$package_file" ]; then
  rpm -qip "$package_file"
  sudo dnf install "$package_file"
else
  printf '%s\n' "找不到檔案,請確認路徑後再試一次。"
fi

三、首次啟動:先匯入訂閱,再確認核心

安裝完成後,從桌面應用程式選單搜尋 v2rayN 並開啟。首次啟動請維持預設權限與一般代理模式;TUN 涉及虛擬網卡、路由與額外權限,不適合和首次安裝問題一起排查。介面選單可能隨版本更新而變動,以下列出中文介面常見名稱;若找不到相同項目,請依目前版本中功能相同的設定操作。

  1. 開啟用戶端

    從應用程式選單啟動 v2rayN。若只看到系統匣圖示,先點選圖示開啟主視窗;不要連續啟動多個執行個體。

  2. 新增訂閱

    前往「訂閱分組」→「訂閱分組設定」,新增分組並填入訂閱網址與備註,儲存後返回主畫面。

  3. 更新訂閱

    在「訂閱分組」選單中選擇「更新全部訂閱(不透過代理)」。本機尚無可用節點時,先嘗試直接更新;若失敗,再檢查網路與訂閱網址。

  4. 設為目前使用項目

    從伺服器清單選取有效設定,使用右鍵選單中的「設為活動伺服器」。訂閱更新成功,不代表已選取可用節點。

  5. 確認監聽狀態

    開啟「設定」→「參數設定」,確認本機監聽位址、連接埠及核心相關設定,再查看執行記錄,確認核心已啟動且沒有連接埠衝突。

訂閱通常已包含節點的協定與傳輸參數,不必為了安裝 Linux 版而將 VMess 改成 VLESS,也不應任意更換 TLS、伺服器名稱或傳輸路徑。若記錄顯示找不到核心檔案,請確認所選安裝套件是否包含所需核心,以及目前用戶端設定指向的檔案是否確實存在;這和系統代理開關是兩個不同的排查方向。

四、Linux 系統代理:監聽連接埠與桌面設定必須一致

系統代理只會影響讀取相關代理設定的應用程式,不會自動接管所有處理程序。請先確認用戶端的本機代理可正常使用,再設定桌面環境的代理。以下以 127.0.0.1:10808 作為示範,並非所有版本的預設值;實際值請從參數設定與記錄中確認。

10808
本文使用的本機代理連接埠
127.0.0.1
本機迴路監聽位址
15 秒
以下請求的逾時上限

在 GNOME 桌面中,前往「設定」→「網路」→「網路代理」→「手動」確認設定。HTTP 與 HTTPS 欄位填入本機 HTTP 代理的主機與連接埠;HTTPS 欄位不代表代理伺服器本身必須透過 HTTPS 連線。若核心提供 SOCKS 監聽,請填入 SOCKS 欄位,不要將純 SOCKS 連接埠填在 HTTP 欄位。混合監聽支援哪些協定,請以目前核心設定為準。

# 查看示範連接埠是否正在監聽
ss -ltnp 'sport = :10808'

# 若此連接埠支援 HTTP 代理
curl --connect-timeout 5 --max-time 15 \
  --proxy http://127.0.0.1:10808 \
  -I https://example.com

# 若此連接埠支援 SOCKS5,請由代理端解析目標網域名稱
curl --connect-timeout 5 --max-time 15 \
  --proxy socks5h://127.0.0.1:10808 \
  -I https://example.com

請依監聽類型選擇其中一個 curl 指令,不必兩個都成功。明確指定 --proxy 是為了略過桌面代理設定,先確認「本機監聽→核心→節點→目標網站」這條連線是否正常。收到 HTTP 回應只代表這次請求已抵達目標,不代表所有網站、UDP 或整套路由都已通過測試。

五、開機自動啟動的實際意義:登入後啟動桌面應用程式

本文建議在登入圖形桌面後自動執行 v2rayN,而不是在登入畫面出現前啟動圖形介面。後者缺少使用者工作階段、顯示服務與桌面設定環境,直接建立系統層級服務,容易導致視窗無法顯示,或代理設定寫入錯誤的使用者帳號。請先手動啟動並確認正常,再設定自動啟動,以減少排查變因。

桌面工作階段自動啟動

建議

使用桌面環境的自動啟動功能,或複製安裝套件提供的 desktop 啟動項目。沿用應用程式實際的啟動指令,讓程式在使用者登入圖形工作階段後啟動。

適用情境:一般桌面使用者,以及需要系統匣與視窗管理的部署方式

用戶端內建開機啟動

若目前 Linux 版本提供此功能,可先啟用並重新登入測試。不同版本與桌面環境的實作可能不同,不要同時啟用另一種自動啟動方式。

適用情境:目前版本明確提供此功能,且確認運作正常

自行撰寫服務單元

需要區分使用者服務與系統服務,並處理圖形工作階段環境及結束行為。本文不會將圖形介面用戶端包裝成登入前執行的背景服務。

適用情境:了解工作階段生命週期,且需要自行設計服務相依性的管理員

若要使用桌面自動啟動,建議沿用套件安裝時提供的 .desktop 檔案,不要自行猜測執行檔所在目錄。以下指令會使用前面安裝時的 package_file 變數查詢套件名稱並列出啟動項目;若已關閉終端機,請重新輸入安裝套件路徑,再執行相應指令。

# Ubuntu / Debian:從 deb 取得實際套件名稱並尋找啟動項目
package_name="$(dpkg-deb -f "$package_file" Package)"
dpkg -L "$package_name" | grep '/applications/.*\.desktop$'

# Fedora:從 rpm 取得實際套件名稱並尋找啟動項目
package_name="$(rpm -qp --queryformat '%{NAME}' "$package_file")"
rpm -ql "$package_name" | grep '/applications/.*\.desktop$'

以上兩組指令只需執行適用於目前系統的一組。確認輸出檔案確實對應 v2rayN 主程式後,再使用以下指令複製。若查無結果,不要複製其他應用程式的啟動項目;請改用目前桌面環境的「自動啟動」設定,新增實際的啟動指令。

read -r -e -p "請輸入查詢到的 desktop 檔案完整路徑:" desktop_file

if [ -f "$desktop_file" ]; then
  grep -E '^(Name|Exec|TryExec|Hidden|OnlyShowIn|NotShowIn)=' "$desktop_file"
  mkdir -p "$HOME/.config/autostart"
  install -m 644 -- "$desktop_file" \
    "$HOME/.config/autostart/v2rayn.desktop"
else
  printf '%s\n' "找不到啟動項目檔案,未建立自動啟動設定。"
fi

六、重新登入測試與常見問題排除

設定完成後,先登出再登入,通常不必重新啟動整台電腦。確認用戶端只啟動一次、目前使用的伺服器設定仍在、本機連接埠正在監聽,再重新執行前面的代理請求。視窗出現、核心啟動與桌面代理生效是三個獨立的檢查項目;只看到系統匣圖示,無法證明網路連線已恢復。

登入後為什麼會出現兩個視窗?

檢查用戶端內建的自動啟動、桌面的「自動啟動」清單與 ~/.config/autostart/,只保留一種方式。若要刪除本文建立的副本,請執行 rm -f "$HOME/.config/autostart/v2rayn.desktop";這不會解除安裝用戶端。

提示連接埠已被占用,該怎麼辦?

執行 ss -ltnp 'sport = :10808',先確認是否有舊執行個體仍在運作。若要修改監聽連接埠,請在「設定」→「參數設定」中儲存變更,並同步更新桌面代理與終端機測試指令,避免兩邊設定不一致。

升級後自動啟動失效了?

重新查詢新版套件的 desktop 檔案,比對 Exec= 與 TryExec=。使用者目錄中的副本不會隨系統檔案自動更新;若路徑有變,請重新複製並登出再登入測試。

關閉用戶端後,網頁反而無法開啟?

確認桌面代理是否仍指向已停止的本機連接埠。在 GNOME 中前往「設定」→「網路」→「網路代理」,切換為「已停用」後再測試直接連線;若要繼續使用代理,請先重新啟動核心。

為什麼終端機程式沒有使用系統代理?

許多命令列工具不會讀取 GNOME 的代理設定。先使用明確指定的 curl --proxy 測試,再依工具文件設定代理參數或環境變數;不要以為桌面代理生效後,所有指令都會自動使用代理。

七、升級或還原前要備份哪些設定

後續升級請繼續使用符合相同發行版與架構的套件,並透過 apt 或 dnf 安裝新版。安裝套件管理的是程式檔案;訂閱、路由與介面偏好等使用者資料,則可能存放在獨立的設定目錄。實際位置會依版本與執行方式而異,請從目前用戶端的設定目錄入口或記錄中確認,不要直接套用網路上某個固定路徑。

完成以上步驟後,Linux 版 v2rayN 的部署可分成四個階段:套件安裝完成、用戶端與核心正常啟動、應用程式請求確實經過代理,以及登入後能自動恢復執行。遇到問題時逐項排查,比同時切換節點、路由與 TUN 更容易找出原因。若想進一步了解模式差異,請參閱系統代理與代理模式說明;調整路由請參閱路由設定參考。

下載 v2rayN