本文速览

Shadowrocket(小火箭)Linux 版安装先确认发行版与处理器架构,再到本站下载页选择 deb、rpm 或 AppImage。本文说明本地文件的安装命令、AppImage 执行权限、首次启动的检查方法,以及如何区分安装故障与连接配置故障。适合已有桌面 Linux 环境、准备导入自己已有服务商配置的用户。

先确认发行版、架构与运行环境

安装包格式与处理器架构是两个独立条件。deb 适用于 Debian / Ubuntu 的软件包体系,rpm 在本文中对应 Fedora 的 dnf 安装流程;AppImage 可作为其他桌面发行版的候选,但仍受处理器架构、系统库和运行环境限制,不能理解为任何 Linux 都能运行。

打开系统的 Terminal,执行下面两条命令。第一条读取发行版标识,第二条显示内核报告的机器架构。下载时对照下载页实际列出的架构,不要只凭电脑品牌判断,也不要把文件扩展名改成另一种格式。

cat /etc/os-release
uname -m
3 类
Linux 安装形式:deb / rpm / AppImage
2 项
先核对发行版家族与处理器架构
1 项
AppImage 启动前检查文件执行权限

下载前按环境选择安装方案

从客户端下载页进入 Linux 分区,选择与系统匹配的文件。本文不固定安装包文件名,避免把旧文件名当成当前下载入口。下载完成后,在浏览器的下载记录中确认保存位置,后续命令直接使用这个真实文件路径。

选择依据:系统包管理与独立文件运行

Debian / Ubuntu / Fedora
  • Debian / Ubuntu 选 deb,由 apt 安装本地文件。
  • Fedora 选 rpm,由 dnf 安装本地文件。
  • 包管理器记录安装结果,并尝试从已启用的软件源解析依赖。
其他桌面发行版
  • 先查看下载页是否有匹配架构的 AppImage。
  • 给文件添加执行权限,以普通用户启动。
  • 保留可写、可执行的存放位置,遇到依赖错误再按发行版处理。

能使用匹配的系统包时先走包管理器;选择 AppImage 时,另行核对系统兼容性与执行权限。

同一时间只验证一种安装形式。若同时保留 deb 安装版与 AppImage,桌面菜单入口和终端启动的文件可能不是同一份,排查时应记录实际启动路径,避免修改了一个文件却一直打开另一个副本。

安装命令:使用下载文件的真实路径

以下命令按 Bash 编写。每组开始都会提示输入文件的完整路径;直接粘贴路径,不要额外加引号。命令中的双引号用于保护含空格的路径,realpath -e 则要求文件确实存在。路径输错时先停止,不要继续执行安装行。

Debian / Ubuntu:用 apt 安装 deb

read -r -p '输入 deb 文件的完整路径:' pkg
pkg=$(realpath -e -- "$pkg") && sudo apt install "$pkg"

这里传入的是本地文件的绝对路径,而不是软件源中的包名。apt 会显示准备安装的软件包、依赖与磁盘占用,核对后再确认。依赖下载需要系统已配置的软件源可访问;如果失败,先读取终端指出的依赖名称与仓库错误,不要反复双击安装包。

  • 提示文件不存在:回到浏览器下载记录,确认路径、大小写和文件是否已经下载完成。
  • 提示依赖无法满足:检查发行版版本、架构以及软件源配置;必要时执行 sudo apt update 后重新尝试,并保留原始错误。
  • 提示包管理器被占用:等待系统更新结束,不要直接删除锁文件。

Fedora:用 dnf 安装 rpm

read -r -p '输入 rpm 文件的完整路径:' pkg
pkg=$(realpath -e -- "$pkg") && sudo dnf install "$pkg"

使用 dnf 而不是只执行低层安装命令,便于同时处理系统仓库能提供的依赖。rpm 是文件格式,不代表所有使用 rpm 的发行版都拥有相同的依赖版本;其他发行版不能直接套用 Fedora 的兼容性结论。

  • 阅读安装事务中列出的变更;若出现意外的大量移除操作,先取消。
  • 遇到架构不匹配或缺少系统库时,回到下载页核对包的适用范围。
  • 不要通过忽略依赖来强行完成安装,否则可能留下无法启动的程序。

AppImage:添加权限后运行

read -r -p '输入 AppImage 文件的完整路径:' app
if app=$(realpath -e -- "$app"); then
  chmod u+x -- "$app" && "$app"
fi

chmod u+x 只给文件所有者增加执行权限,不需要把权限扩大为任何用户可写。执行 AppImage 本身不使用 sudo。首次验证建议从终端启动,这样窗口未出现时仍能看到缺少库、FUSE 或图形会话相关的错误。

首次启动:先验证程序,再导入配置

安装完成与连接成功是两件事。先确认程序能够打开,再导入自己已有的配置,最后检查连接结果。以下按 Home、Config、Settings 的功能位置说明操作;不同平台的按钮排列可能不同,核对界面词再操作,不依赖图标位置猜测。

  1. 确认启动

    系统包安装后,从桌面应用菜单打开 Shadowrocket;AppImage 则运行刚才确认的完整路径。若没有窗口,先读取 Terminal 输出,不要立即改网络设置。

  2. 导入已有配置

    进入 Home → 添加入口 → Type → Subscribe,填入自己的订阅地址后保存,并执行更新。订阅地址可能含访问凭据,不要把完整地址贴入公开日志或截图。

  3. 核对规则

    进入 Config,确认当前启用的配置;再核对 Global Routing 的选择。安装完成不会自动保证已有规则、策略名称和服务端参数彼此匹配。

  4. 验证连接

    在 Home 选择已有配置中的可用连接并启用开关,分别检查连接状态与浏览器访问结果。若出现权限请求,核对请求来源后再按系统提示处理。

若程序打开正常但无法连接,应核对地址、端口、认证信息和传输参数,而不是反复更换安装包。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 的参数结构不同,不能只复制服务器地址就视为完成配置。本站不提供、不销售、不推荐节点或订阅。

区分 Global Routing 设置与安装问题

浏览器仍能访问某个网站,并不能单独证明流量经过了预期策略;连接开关开启,也不等于每条连接都采用相同路径。先核对 Global Routing,再结合当前配置的规则判断。下面只比较 Shadowrocket 自身的设置用途。

Config

推荐

按当前配置中的规则选择处理策略。规则顺序和策略引用决定结果,不应把 Config 简化为固定的“部分直连、部分代理”。

适合:已有规则配置的日常使用与分流验证。

Proxy

将由客户端接管的连接按代理模式处理,可用于与 Config 的结果对照;它不意味着系统中每个进程的所有流量都必然被接管。

适合:临时判断问题是否与规则匹配有关。

Direct

将由客户端接管的连接按直连模式处理。停在此模式时,不能用网页能够打开来证明代理参数正确。

适合:对照本地网络的直接访问结果。

如果 Global Routing 当前使用 Scene,应先检查实际启用的场景及其条件,再与上述模式对照。Settings → On Demand 涉及按条件触发连接,不负责安装依赖,也不是修复 AppImage 执行权限的开关。

常见报错:按现象处理,不重复安装

AppImage 双击没反应,先检查什么?

先从 Terminal 运行文件,读取错误。出现 Permission denied 时检查 chmod u+x 是否成功;如果权限已存在,再检查所在分区是否使用 noexec 挂载。可以将文件移到允许执行的用户目录后重试,不要修改整个磁盘的安全策略。

文件就在目录里,为什么提示找不到?

Linux 默认不会从当前目录搜索可执行文件。使用文件的绝对路径,或在文件名前加 ./。如果绝对路径仍报 No such file or directory,要继续检查错误是否来自程序加载器或缺少的运行库,而不只是反复改文件名。

提示 Exec format error,需要换成 rpm 吗?

先执行 uname -m 核对架构,并检查下载的文件类型。该错误可能与架构不匹配有关,更换文件扩展名无效。文件若尚未下载完整或实际不是程序,也应回下载记录确认,不能仅凭一个错误断定原因。

能打开窗口,但开启连接后网页失败怎么办?

这时先保留已能启动的安装环境,检查 Home 中的连接参数、Global Routing 和 Config。对照系统时间是否准确,再分别测试服务端连通性与规则结果;不要通过卸载重装来替代参数检查。

更新与清理:保留可恢复的配置

更新前先保存当前配置与必要的连接参数,并确认备份文件的实际内容。配置可能包含订阅地址、密码或密钥,应存放在仅本人可访问的位置。不要把应用窗口截图当成完整备份,也不要假设卸载后配置一定保留或一定删除。

记录发行版、架构、安装形式、启动方式与终端中的第一条错误,通常比只描述“打不开”更有利于定位问题。若安装已经完成,后续排查应围绕实际报错展开,避免同时修改软件源、文件权限与连接配置,导致无法判断哪项操作产生影响。