· 平台部署 · 約 10 分鐘

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

瞭解如何在 Debian/Ubuntu 與 Fedora 安裝 v2rayN 桌面版、設定登入後自動啟動,並排除常見相依套件問題。

本文重點

本文適合使用 Linux 圖形桌面的使用者。請依系統架構選擇 deb 或 rpm 套件,再透過系統套件管理器安裝。接著確認本機代理連接埠、設定目前使用者的桌面自動啟動項目,並釐清登入時啟動、系統代理與 TUN 權限之間的差異。命令以 Bash 為例;套件名稱與啟動路徑請以實際檔案為準,不必依賴固定版本的檔名。

一、Linux 發行版與安裝套件架構

v2rayN 是桌面用戶端,可管理連線設定、啟動代理核心並提供操作介面。安裝桌面套件不等於部署背景代理服務。本文假設您已進入 GNOME、KDE Plasma 等圖形工作階段;只有遠端終端機的伺服器不適合直接套用桌面自動啟動流程。

先執行以下兩個命令。/etc/os-release 用來辨識發行版,uname -m 用來辨識機器架構。別因為裝置名稱標示「64 位元」就直接選 x64 套件;ARM64 同樣是 64 位元架構。

cat /etc/os-release
uname -m

Debian / Ubuntu

套件格式
deb
安裝工具
apt
x64 架構名稱
amd64
ARM64 架構名稱
arm64

使用 dpkg-deb 讀取套件資訊,再交由 apt 處理可從套件庫取得的相依套件。

Fedora

套件格式
rpm
安裝工具
dnf
x64 架構名稱
x86_64
ARM64 架構名稱
aarch64

rpm 套件的架構欄位須與機器相符,不能直接安裝 deb 套件。

在下載頁的 Linux 分類中選擇對應套件:x86_64 機器選 x64,aarch64 機器選 ARM64。以下僅說明一般可寫入的系統;採用不可變根檔案系統的發行版,須依該系統的軟體部署機制另行處理,不能假設可透過 dnf install 在主機上安裝。

二、使用命令安裝 deb 與 rpm 套件

從客戶端下載頁儲存安裝套件。建議保留原始檔名,避免同時下載多種架構的套件而選錯。以下命令會提示輸入本機檔案路徑,可使用 Bash 的 Tab 鍵補齊;輸入路徑時請勿額外加上引號。每組命令請在同一個終端機工作階段中依序執行。

Debian/Ubuntu:使用 apt 安裝 deb 套件

read -r -e -p 'deb 檔案路徑:' package
package=$(realpath -- "$package")
dpkg-deb --field "$package" Package Version Architecture
sudo apt update
sudo apt install "$package"

先用 dpkg-deb 顯示套件名稱、版本與架構,確認無誤後再安裝。傳給 apt 的是本機絕對路徑,不是套件庫中的套件名稱。apt 可從已啟用的軟體來源解析相依套件,但無法提供目前發行版套件庫中沒有的程式庫版本。

Fedora:使用 dnf 安裝 rpm 套件

read -r -e -p 'rpm 檔案路徑:' package
package=$(realpath -- "$package")
rpm -qp --queryformat '%{NAME} %{VERSION}-%{RELEASE} %{ARCH}\n' "$package"
sudo dnf install "$package"

rpm -qp 只會查詢待安裝的檔案,不會安裝程式。實際安裝交由 dnf 處理,由它解析相依套件並記錄交易。若出現簽章或來源提示,請先確認下載來源與套件資訊,切勿為了繼續安裝而直接停用檢查。

使用套件管理器安裝本機套件

建議做法

使用 apt install 或 dnf install 指定本機檔案。相依套件解析、檔案歸屬與後續解除安裝都會記錄在系統套件資料庫中,升級時也能清楚提示衝突。

適用情況:一般 Debian、Ubuntu 與 Fedora 桌面環境。

手動解開套件檢查

只解開檔案可用來檢視目錄結構,但不會自動完成完整安裝流程,也不保證應用程式選單項目與相依套件都已就緒。解開成功不代表客戶端已安裝完成。

適用情況:檢查套件內容、找出封裝問題,不建議用於日常安裝。

三、首次啟動與本機代理測試

安裝完成後,從桌面應用程式選單搜尋 v2rayN 並啟動。請先以一般使用者身分開啟介面,不要使用 sudo 啟動整個桌面程式。以管理員身分執行可能會建立 root 所有的設定檔,也會混淆桌面工作階段權限與網路權限。

  1. 開啟客戶端

    在應用程式選單搜尋 v2rayN。若找不到項目,請先確認安裝是否完成,再依下一節的方法尋找實際的 .desktop 檔案;不要猜測可執行檔路徑。

  2. 匯入連線

    複製既有的連線分享連結,在主視窗的「伺服器」選單中選擇從剪貼簿匯入。介面版本不同,選單文字可能略有差異;請確認匯入後的伺服器位址與連接埠符合預期。

  3. 選擇伺服器

    在伺服器清單選取目標項目,透過右鍵選單的「設為作用中伺服器」啟用。先查看記錄是否有設定錯誤或連接埠占用,再繼續測試。

  4. 確認監聽連接埠

    在「設定」→「參數設定」中確認本機監聽連接埠與代理協定,並與核心啟動記錄比對。以下範例使用 10808,僅在實際啟用該連接埠的 SOCKS 入口時執行。

先測試「在終端機明確指定代理」這條路徑,再設定桌面系統代理。如此可區分伺服器連線問題與桌面環境設定問題。以下三個數字是診斷命令的固定參數,不代表測速結果或所有版本的預設值。

10808
範例 SOCKS 監聽連接埠
127.0.0.1
本機迴圈位址
15 秒
curl 單次測試逾時時間
ss -lntp 'sport = :10808'
curl --proxy socks5h://127.0.0.1:10808 \
  --head --max-time 15 https://v2rayguanwang.com/

socks5h 表示將目標主機名稱交由 SOCKS 代理解析。若出現 Connection refused,請先檢查本機監聽狀態;若已連上代理但發生 TLS 錯誤或遠端逾時,再檢查節點參數、系統時間與對外網路。收到 HTTP 回應只代表這次請求有收到回應,不代表所有應用程式都已接管流量。

四、桌面自動啟動:登入後啟動 v2rayN

桌面使用者所說的「開機自動啟動」,通常是指登入圖形桌面後啟動客戶端。XDG 自動啟動目錄 ~/.config/autostart/ 正是為這種情境設計。電腦啟動但尚未登入時,這項機制不會執行;登出後也不能依靠它維持獨立的系統服務。

建議優先使用桌面環境提供的啟動項目管理介面新增應用程式。若需手動設定,請沿用安裝套件提供的桌面入口。原始入口通常已包含正確的 Exec、圖示與執行參數,比手動猜測 /opt/ 路徑更可靠。

find /usr/share/applications "$HOME/.local/share/applications" \
  -maxdepth 1 -type f -iname '*v2rayn*.desktop' -print 2>/dev/null

若沒有輸出,可查詢安裝套件的檔案清單:deb 使用 dpkg-deb --contents "$package",rpm 使用 rpm -qpl "$package",其中 package 是前面讀取的安裝套件路徑。若已切換終端機,需重新讀取此變數。找到實際安裝的桌面入口後,再執行以下複製操作。

read -r -e -p '已安裝的 desktop 檔案路徑:' desktop
if test -f "$desktop"; then
  install -Dm644 -- "$desktop" "$HOME/.config/autostart/v2rayn.desktop"
  grep -E '^(Type|Name|Exec|TryExec|Hidden|OnlyShowIn|NotShowIn|X-GNOME-Autostart-enabled)=' \
    "$HOME/.config/autostart/v2rayn.desktop"
else
  printf '%s\n' '檔案不存在,請重新確認桌面入口路徑。'
fi

儲存後先正常結束客戶端,再登出並重新登入。不要只關閉視窗就認定程序已結束:有些設定會將視窗縮至系統匣。重新登入後,分別檢查介面、核心記錄與監聽連接埠;只看到系統匣圖示,還不足以證明代理已正常運作。

五、自動啟動驗收、升級與復原

自動啟動測試應涵蓋圖形工作階段與網路連線兩個階段。桌面可能已載入,但無線網路、名稱解析或遠端連線尚未就緒。開機後出現一筆逾時記錄,不必立即判定安裝失敗;等網路可用後,再重新發出一次明確指定代理的請求。

檢查項目操作方式結果說明
程式是否已啟動pgrep -af '[v]2rayN'確認主程序;若找不到相符的程序名稱,再透過桌面系統監視器確認。
核心是否正在監聽ss -lntp 'sport = :10808'依實際設定修改連接埠;若沒有監聽,請先查看核心記錄。
使用者工作階段錯誤journalctl --user -b --no-pager -n 100檢查本次啟動的使用者記錄;桌面環境是否記錄啟動輸出,視環境而定。
停用手動設定的自動啟動rm -- "$HOME/.config/autostart/v2rayn.desktop"只刪除本文建立的使用者啟動項目,不會解除安裝客戶端。

升級前,先使用客戶端提供的匯出功能儲存連線設定,並記下本機監聽連接埠、路由模式與目前使用的核心。備份設定目錄時,請從目前客戶端介面或記錄確認實際路徑,不要直接套用其他系統的路徑到 Linux。設定可能包含連線憑證,備份檔也應限制存取。

下載新套件後,沿用相同的套件管理器安裝。安裝新版本前請先結束客戶端,避免舊程序仍在執行而誤判版本。手動複製的自動啟動檔不會隨桌面入口更新;若升級後 Exec 路徑有變,請重新複製並檢查停用標記。降回舊版也不一定能讀取新版寫入的設定,操作前請保留對應備份。

六、相依套件、桌面工作階段與代理問題

apt 顯示相依套件無法滿足,可以強制安裝嗎?

先確認套件架構與發行版支援範圍,再執行 sudo apt update 檢查軟體來源是否可連線。若先前透過 dpkg 留下尚未設定的套件,可執行 sudo apt --fix-broken install;執行前請先檢視即將安裝或移除的清單。若目前套件庫沒有所需的程式庫版本,忽略相依套件並不能解決執行問題。

rpm 已安裝,但點選選單沒有反應,該怎麼辦?

先查看實際的 .desktop 檔案中的 Exec。若要在終端機重現,請取出其中的可執行檔路徑與固定參數執行,不要將 %U、%F 等桌面欄位代碼直接當成終端機參數。若記錄指出缺少共享程式庫,可針對記錄列出的程式庫名稱執行 dnf provides 查詢提供者,再決定安裝相依套件或改用相容的套件。

重新啟動後沒有視窗,是自動啟動失敗了嗎?

先完成圖形登入,再檢查系統監視器、系統匣與本機監聽狀態。有些桌面環境預設不顯示系統匣,程序可能已在執行。若程序也不存在,請檢查使用者 autostart 檔案中的 Exec、Hidden 與桌面限制欄位,並確認啟動項目沒有寫入其他使用者的家目錄。

curl 透過代理正常,但瀏覽器沒有變化?

這表示明確指定代理的路徑可用,不代表桌面代理已生效。在 GNOME 中檢查「設定」→「網路」→「網路代理」,在 KDE Plasma 中檢查「系統設定」→「網路」→「代理」;選項名稱可能因桌面版本而異。也請檢查瀏覽器自己的代理政策,不要將 SOCKS 連接埠填入僅接受 HTTP 代理的欄位。

一般代理可用,但 TUN 顯示權限不足?

檢查 /dev/net/tun 是否存在,並閱讀目前版本的 TUN 權限提升提示。容器、受限工作階段或安全性政策可能會禁止建立網卡。不要為了消除提示而長期以 root 身分執行整個圖形客戶端,也不要任意授予不明程式網路管理權限;請先確保一般代理可用,再單獨處理 TUN 權限。

排查時請保留發行版名稱、uname -m 輸出、套件版本、桌面環境與第一筆明確錯誤。分享記錄前,請移除訂閱網址、連線識別資訊與伺服器憑證。安裝、啟動、監聽與應用程式代理是四個不同階段,依序確認比反覆重新安裝更容易找出問題。

下載客戶端