v2rayN Linux 版安裝教學:Deb/RPM 套件安裝與開機自動啟動設定

提供 Debian/Ubuntu 與 Fedora 系發行版的安裝指令,說明依賴套件、桌面捷徑與登入自動啟動設定,並整理常見權限錯誤。

本文重點

本文適合在 Linux 圖形桌面環境使用 v2rayN 的使用者。先確認發行版與處理器架構,再透過 apt 或 dnf 安裝本機套件;首次手動啟動確認正常後,沿用安裝套件提供的桌面捷徑設定登入時自動啟動。最後分別檢查監聽連接埠、代理請求與桌面工作階段,避免混淆「已安裝軟體」、「代理可連線」和「登入後自動執行」。

一、先確認發行版、架構與桌面工作階段

前往用戶端下載頁選擇 Linux 安裝套件。Debian、Ubuntu 及其衍生發行版通常使用 deb,Fedora 則使用 rpm。套件格式與處理器架構都必須相符:x86_64 對應 x64,aarch64 對應 ARM64。請勿只根據電腦品牌判斷架構。

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

Debian / Ubuntu

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

使用 apt 安裝本機套件時,也能透過已設定的套件來源解析依賴。

Fedora

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

rpm 是套件格式;使用 dnf 安裝較方便處理軟體庫依賴。

以下步驟適用於已登入 GNOME、KDE 等圖形桌面的情況。純命令列伺服器沒有桌面工作階段,不能直接套用桌面自動啟動方式。v2rayN 是圖形用戶端,代理核心才負責連線與轉送;安裝用戶端不代表代理已啟用。

二、Debian/Ubuntu:安裝 deb 並修復依賴

先在檔案管理員中開啟下載資料夾,再選擇「在終端機中開啟」。將這次要安裝的 deb 單獨放在一個資料夾,避免指令選到舊版本或其他套件。以下指令請在 Bash 中執行:先確認目前資料夾內只有一個 deb,再讀取套件資訊並安裝;變數只會保留在目前的終端機工作階段。

mapfile -d '' packages < <(find . -maxdepth 1 -type f -name '*.deb' -print0)
if [ "${#packages[@]}" -eq 1 ]; then
  deb_file="${packages[0]}"
  dpkg-deb -f "$deb_file" Package Version Architecture
  sudo apt update
  sudo apt install "$deb_file"
else
  printf '請在目前資料夾只保留這次要安裝的一個 deb 套件。\n'
fi

確認輸出中的套件名稱、版本與架構後,再確認安裝提示。路徑以 ./ 開頭代表本機檔案;省略路徑時,apt 可能會將參數視為套件庫中的套件名稱。若出現架構不符的提示,請重新選擇安裝套件,不要使用強制參數略過檢查。

  1. 確認套件資訊

    查看 dpkg-deb -f 的輸出,確認下載的是 v2rayN 對應套件,且架構與系統相符。

  2. 安裝並補齊依賴

    使用 sudo apt install "$deb_file"。若先前使用 dpkg 安裝後留下未完成的套件設定,再執行 sudo apt --fix-broken install,確認修復計畫後繼續。

  3. 檢查桌面捷徑

    安裝完成後開啟應用程式選單並搜尋 v2rayN;請勿先對程式資料夾遞迴新增寫入權限。

  4. 以一般使用者啟動

    以目前登入的使用者身分開啟 v2rayN,確認主視窗與記錄都正常後,再設定訂閱與登入自動啟動。

三、Fedora:使用 dnf 安裝 rpm

同樣在只存放這次安裝套件的資料夾中開啟 Bash。先用 rpm -qp 查詢中繼資料,再交由 dnf 安裝。查詢本機套件不會執行安裝,也不需要管理員權限。

mapfile -d '' packages < <(find . -maxdepth 1 -type f -name '*.rpm' -print0)
if [ "${#packages[@]}" -eq 1 ]; then
  rpm_file="${packages[0]}"
  rpm -qp --queryformat '%{NAME} %{VERSION}-%{RELEASE} %{ARCH}\n' "$rpm_file"
  sudo dnf install "$rpm_file"
else
  printf '請在目前資料夾只保留這次要安裝的一個 rpm 套件。\n'
fi

不要使用 rpm --nodeps 略過依賴。這可能導致套件顯示已安裝,啟動時卻找不到共享函式庫。若發生依賴錯誤,請先確認 dnf 顯示的套件名稱與版本限制;若套件庫沒有所需版本,請檢查系統版本與套件是否相容。

安裝本機 deb 或 rpm 不代表已新增可持續更新的套件來源。後續是否能透過系統更新升級,取決於安裝套件是否設定了軟體庫;若沒有,就需要下載新版套件並重新安裝。

四、首次執行:先確認監聽,再測試代理

從應用程式選單啟動 v2rayN,匯入自己持有的訂閱或節點設定,並選取可用節點。接著前往「設定」→「參數設定」,查看本機監聽相關設定。不同版本的選項位置可能有所調整,請以目前介面顯示的連接埠與通訊協定類型為準。

10808
下方驗證指令使用的範例連接埠
127.0.0.1
僅供本機連線的迴路位址
15 秒
單次代理請求的逾時上限

以下假設本機 SOCKS 或混合監聽連接埠為 10808;這只是驗證範例,不保證所有版本都使用這個預設值。若實際連接埠不同,請在執行前修改指令中的數字。socks5h 會將目標網域交由代理端解析,可減少本機 DNS 對這次測試的干擾。

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

瀏覽器可以連線,不代表終端機會自動使用系統代理;上方的 curl 指令明確指定了代理,不依賴桌面代理設定。首次部署時,請先完成這種單次測試,再視需要啟用系統代理或 TUN。一般本機代理不需要長期以 root 身分執行整個圖形用戶端。

五、登入時自動啟動:沿用套件提供的桌面捷徑

這裡所說的「開機自動啟動」是指使用者登入圖形桌面後啟動 v2rayN,並非電腦開機後、登入之前就執行。日常桌面使用建議優先採用 XDG 自動啟動捷徑;它可以沿用套件維護的執行路徑,減少升級後捷徑失效的機會。

XDG 桌面自動啟動

建議

將現有桌面捷徑複製到使用者的自動啟動資料夾。登入桌面時,由支援 XDG 自動啟動的桌面環境負責處理。

適用情境:GNOME、KDE 等桌面的日常使用。

用戶端內建自動啟動選項

如果目前版本的參數設定提供開機啟動選項,可以使用該選項,但不要再另外建立手動捷徑。

適用情境:希望在用戶端內集中管理啟動方式的使用者。

系統層級服務

適用於獨立核心程序的服務部署;需要另外管理設定、使用者與網路依賴,不能直接照搬圖形介面的啟動指令。

適用情境:明確需要在登入前執行,且能獨立維護核心設定的管理員。

找出安裝後的 desktop 檔案

在一般使用者的終端機中執行下方搜尋指令。只有找到一個檔案時,腳本才會複製;若找到多個,則會列出候選項目並停止。如此不必預設安裝目錄,也不會把安裝套件檔名誤當成程式啟動指令。

mapfile -d '' entries < <(
  find /usr/share/applications /usr/local/share/applications \
    -maxdepth 1 -type f -iname '*v2rayn*.desktop' \
    -print0 2>/dev/null
)
if [ "${#entries[@]}" -eq 1 ]; then
  desktop_file="${entries[0]}"
  grep -E '^(Name|Exec|TryExec|Path|Hidden|OnlyShowIn|NotShowIn)=' "$desktop_file"
  autostart_dir="${XDG_CONFIG_HOME:-$HOME/.config}/autostart"
  mkdir -p "$autostart_dir"
  cp -- "$desktop_file" "$autostart_dir/v2rayn.desktop"
  printf '已複製至:%s\n' "$autostart_dir/v2rayn.desktop"
else
  printf '找到 %s 個捷徑,請先手動確認:\n' "${#entries[@]}"
  printf '%s\n' "${entries[@]}"
fi

若找不到捷徑,可回到先前執行安裝的終端機,使用 dpkg-deb -f "$deb_file" Package 或 rpm -qp --queryformat '%{NAME}\n' "$rpm_file" 取得套件名稱,再透過 dpkg -L 或 rpm -ql 查看套件檔案清單。確認實際捷徑後再繼續,不要猜測 /opt 下的程式路徑。

檢查是否已停用

使用文字編輯器開啟複製後的檔案,並在 [Desktop Entry] 區段檢查:若已有 Hidden=true,請改為 Hidden=false;若已有 X-GNOME-Autostart-enabled=false,請改為 true。若沒有這些停用設定,通常不需要另外新增。若有 OnlyShowIn 或 NotShowIn,也請確認目前使用的桌面環境未被排除。

六、登出後驗證,並保留復原方式

儲存目前工作,正常結束 v2rayN,然後登出桌面並重新登入。只關閉終端機無法測試登入自動啟動。登入後先確認視窗或程序是否執行,再檢查監聽連接埠;部分桌面環境不支援系統匣圖示,不能只靠系統匣中是否出現圖示來判斷結果。

pgrep -af '[vV]2ray[Nn]'
ss -lntp 'sport = :10808'
journalctl --user -b --no-pager -n 100

使用者記錄是否包含啟動資訊,取決於桌面環境;不應直接將「記錄中沒有內容」視為啟動失敗。若用戶端已執行但節點連線逾時,請先等待網路連線完成,再檢查訂閱、節點與核心記錄;不要為了解決網路問題而重複新增自動啟動項目。

rm -f -- "${XDG_CONFIG_HOME:-$HOME/.config}/autostart/v2rayn.desktop"

七、安裝與權限錯誤的常見處理方式

安裝時出現 Permission denied,需要替整個資料夾新增權限嗎?

先判斷錯誤涉及的對象。安裝系統套件需要透過 sudo 執行套件管理工具;若讀取安裝檔案失敗,則應檢查檔案與上層資料夾的權限。不要遞迴放寬系統資料夾權限。若 apt 只是提示低權限使用者無法讀取本機套件,但最後顯示安裝成功,請依結束狀態與安裝結果判斷,不要把這項提示誤認為啟動故障。

視窗無法開啟,如何查看實際錯誤?

查看桌面捷徑中的 Exec=,並在已登入桌面的普通使用者終端機中執行對應程式;移除 %U、%F 等桌面佔位參數,並確認路徑引號正確。根據輸出判斷是缺少共享函式庫、圖形環境無法使用,還是設定異常;不要用 sudo 啟動來掩蓋錯誤。

先前曾用 sudo 開啟程式,現在無法儲存設定怎麼辦?

先根據錯誤路徑與 ls -ld 確認實際設定資料夾是否由 root 擁有。退出程式後,只修正已確認的 v2rayN 使用者資料資料夾擁有者。不要對整個家目錄遞迴變更權限,也不要修改程式安裝資料夾來解決使用者設定無法寫入的問題。

升級後無法自動啟動,但手動開啟正常?

比對使用者的自動啟動檔案與新安裝的桌面捷徑,特別檢查 Exec、TryExec 和 Path。舊的複本不會隨系統捷徑自動更新;確認新捷徑有效後重新複製,再次登出並登入驗證。

TUN 提示權限不足,可以一直用 root 執行嗎?

先改用一般本機代理確認節點連線,再依目前版本的 Linux TUN 授權流程處理權限。TUN 涉及虛擬裝置與路由管理,和桌面自動啟動是不同層面的問題。若只為了解決自動啟動而提高整個用戶端的權限,會改變設定檔的擁有者與桌面工作階段環境。

最後分三項驗收:系統套件管理工具能查詢到套件;一般使用者手動啟動後,代理請求可以正常使用;重新登入桌面後,監聽入口會自動恢復。三項都通過,才代表安裝、連線與自動啟動均已完成。之後若修改連接埠或升級安裝路徑,也請依此順序重新檢查。

用戶端與平台選擇

依 Linux 發行版與處理器架構選擇 deb 或 rpm 安裝套件。首次安裝請先完成手動啟動與代理驗證,再回到本文設定登入自動啟動。

下載v2rayN依作業系統選擇用戶端