本文适合已经有 Linux 桌面环境、准备安装 Shadowrocket(小火箭)的用户。先确认发行版和处理器架构,再从本站下载页选择 deb、rpm 或 AppImage;随后按对应步骤安装或运行,最后检查 Home、Config 与 Global Routing。文中命令读取你实际下载的文件路径,不依赖固定文件名,也不会把其他格式的安装包混入同一套命令。
先确认发行版与架构
安装格式与处理器架构是两个不同条件。deb、rpm 决定系统用什么工具管理软件,x86_64、aarch64 等架构则决定程序能否在当前处理器上执行。文件后缀正确,不代表架构也正确。打开终端,先执行下面两条命令,记录发行版名称及架构结果。
cat /etc/os-release
uname -m
/etc/os-release 中的 ID 与 ID_LIKE 有助于判断系统家族;uname -m 通常会返回 x86_64 或 aarch64 等值。下载页的 x64、amd64 通常对应 x86_64,arm64 通常对应 aarch64。只选择下载页实际提供、且与系统一致的架构,不把格式转换当作解决架构不匹配的方法。
| 系统环境 | 优先选择 | 执行方式 |
|---|---|---|
| Debian、Ubuntu 及兼容系统 | deb | 通过 apt 安装本地文件并处理依赖 |
| Fedora 等使用 dnf 的系统 | rpm | 通过 dnf 安装本地文件并处理依赖 |
| 其他兼容的 Linux 桌面环境 | AppImage | 授予执行权限后由普通用户运行 |
同属 rpm 系列不代表都使用 dnf;如果系统没有 dnf,不应直接照抄 Fedora 的命令。AppImage 也不意味着兼容所有发行版,它仍受处理器架构、系统运行库和桌面环境影响。本文以图形桌面使用为前提,不把远程终端中无法显示窗口当作安装包损坏。
安装格式与获取方式
前往Shadowrocket 下载页选择 Linux 安装包,保存后核对文件扩展名。本文不固定下载文件名;后续命令需要输入下载完成的真实路径。浏览器仍在下载时不要提前执行,带临时下载后缀的文件也不能当作完整安装包使用。
iPhone / iPad 从 App Store 获取,开发者为 Shadow Launch Technology Limited,价格为 $2.99 一次性,系统要求以 App Store 页面标注为准;Mac(Apple 芯片与 Intel)、Windows、安卓和 Linux 版免费,安装包从本站下载页获取。Shadowrocket 是闭源商业应用,Linux 版免费并不改变其软件性质。
按系统管理方式选择
使用 deb / rpm
- 系统有匹配的包管理工具。
- 希望由系统记录软件包及依赖关系。
- 安装时可以提供管理员授权。
使用 AppImage
- 下载页提供匹配架构的文件。
- 希望把程序文件保存在个人目录。
- 可以自行检查执行权限和运行环境。
已有匹配的 deb 或 rpm 时,优先使用系统包管理方式;AppImage 作为独立文件运行,不等于免除所有系统依赖。
用 apt 安装 deb
在 Debian、Ubuntu 等系统中,优先使用 apt 安装本地 deb。与单独解包相比,apt 会尝试从当前启用的软件源解析依赖。下面各行在同一个 Bash 终端中依次执行;输入路径时不要额外加引号,可使用绝对路径或相对当前目录的路径。
read -r -p '输入已下载 deb 文件的实际路径:' pkg
pkg=$(realpath -- "$pkg")
dpkg-deb -f "$pkg" Package Architecture
sudo apt update
sudo apt install "$pkg"
dpkg-deb 这一行只读取包名和架构,不会执行安装。确认输出与预期一致,再继续执行后面的命令。realpath 把输入转换为绝对路径,使 apt 明确把它当作本地文件;如果提示文件不存在,应先修正路径,而不是继续运行安装命令。
-
确认文件
在文件管理器查看下载完成的 deb,记录完整路径。若下载目录不是英文 Downloads,以实际保存目录为准。
-
检查架构
对照
dpkg-deb -f的 Architecture 与系统架构;发现不匹配时,返回下载页重新选择,不使用强制安装选项。 -
执行安装
运行 apt 命令,查看将安装、升级或删除的软件包清单。若出现大范围删除系统组件的提议,先取消并检查发行版兼容性。
-
打开程序
等待安装正常结束后,从桌面应用菜单启动 Shadowrocket。不要用 sudo 启动整个图形程序来替代首次连接时的授权流程。
用 dnf 安装 rpm
在使用 dnf 的系统中,安装本地 rpm 同样需要给出实际文件路径。先读取包信息,再让 dnf 处理事务。以下命令与上一节独立,即使已经关闭过终端,也可重新输入文件路径后使用。
read -r -p '输入已下载 rpm 文件的实际路径:' pkg
pkg=$(realpath -- "$pkg")
rpm -qp --queryformat '%{NAME} %{ARCH}\n' "$pkg"
sudo dnf install "$pkg"
rpm -qp 用于查询尚未安装的本地包。dnf 会显示依赖、下载内容与事务摘要,确认后再继续。如果提示找不到依赖,先检查网络和系统软件源是否正常;不要把禁用依赖检查当成常规安装步骤。
- 提示架构不兼容:返回下载页选择与
uname -m相符的包。 - 提示路径不存在:检查输入是否含有多余引号、空格或错误目录;命令中的
"$pkg"已负责保护路径里的空格。 - 提示包冲突:记录冲突包名,先确认是否安装过同一应用的其他打包格式,不直接使用强制覆盖参数。
- 系统没有 dnf:查阅当前发行版的本地 rpm 安装方式,或选择下载页提供的兼容 AppImage。
deb 与 rpm 安装都可能需要联网获取依赖。下载好主安装包并不等于完成离线安装准备;缺少依赖时,应先解决软件源访问问题,而不是反复下载同一个文件。
AppImage 首次运行
AppImage 通常以单个文件保存,下载后应先放入长期使用的个人目录。它不是 deb 或 rpm,不能交给 apt、dnf 安装。第一次运行前,为当前用户增加执行权限,再直接启动该文件。
read -r -p '输入 AppImage 文件的实际路径:' app
app=$(realpath -- "$app")
chmod u+x -- "$app"
"$app"
chmod u+x 只为文件所有者增加执行权限,不需要给所有人开放写入权限。程序运行时保留这个终端窗口,有助于看到启动错误。正常情况下应以当前桌面用户运行;不要为了消除一个报错就改为使用管理员身份启动。
- Permission denied:先确认文件属于当前用户并已有执行权限,再检查所在分区是否以
noexec挂载。此时可把文件移到允许执行的个人目录。 - Exec format error:优先核对架构,并确认下载已完成;增加执行权限不能修正架构错误。
- FUSE 相关报错:部分 AppImage 运行方式依赖 FUSE。按当前发行版说明安装匹配组件,不套用其他系统的包名。
- 缺少图形显示:在本地桌面会话中启动。仅通过 SSH 登录的终端不一定具备显示应用窗口的条件。
如果双击只弹出“选择打开方式”,可先按上述终端命令运行,以区分执行权限与文件关联问题。AppImage 是否自动加入应用菜单取决于桌面集成方式;没有菜单图标不等于文件无法运行。移动文件后,旧快捷方式也可能失效,需要更新其目标路径。
安装后的连接检查
能打开窗口只说明程序启动成功,尚未证明代理连接可用。以下步骤以用户已有自己的服务商与订阅为前提:在 Home 添加已有服务器信息或订阅,在 Config 核对要使用的配置,再检查 Global Routing。不要把安装格式与网络模式混为一谈,改装 AppImage 通常不会修正规则中的错误。
Config
推荐按当前生效配置中的规则决定已接管请求的策略。使用前应确认 Config 中启用的是预期配置,并检查末尾 FINAL 的去向。
适合:已有正确配置,需要按域名或 IP 分流的日常使用。
Proxy
将已接管流量统一交给代理策略,可用于区分服务器连接问题与规则问题;它不意味着所有进程都自动被接管。
适合:临时检查代理路径是否可用,测试后恢复原模式。
Direct
将已接管流量按直连处理。浏览器在此模式下能访问普通网站,不能证明代理服务器可用。
适合:检查本地基础网络,以及与代理路径作对照。
例如,Config 中以下规则表示对 example.com 及其子域名使用 PROXY,其余未匹配请求使用 DIRECT。它是规则语法示例,不是服务器配置,也不会自动生成可用连接。诊断时先确认实际命中项,再核对策略,不要把规则片段直接当作完整配置文件导入。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
安装与更新常见问题
apt 说找不到文件,明明已经下载了?
先在文件管理器确认文件位置,再重新运行读取路径的命令。输入实际路径,不要输入下载页地址;路径中含空格可以直接输入,但不要手动再套一层引号。只有文件存在且下载完成后才继续安装。
AppImage 加了权限还是打不开?
从终端运行该文件并读取错误内容。按架构、执行权限、挂载选项、FUSE 与运行库的顺序排查;若明确提示缺少系统库,按本发行版的软件包说明处理,不通过关闭系统安全机制来碰运气。
deb、rpm 会跟着系统自动更新吗?
安装本地包不代表自动添加了软件源。没有确认相应更新来源时,返回本站下载页获取适配包,再用同一种包管理方式安装。AppImage 则先退出程序,再替换为新下载的匹配文件,并重新检查执行权限。
重新安装前要先删配置吗?
不要把删除配置作为首个排查动作。先保存已有配置和订阅信息,再区分问题发生在启动、导入还是连接阶段。系统包与用户配置通常是不同层次的数据,卸载软件包不应被当作可靠的配置备份或清理方法。
完成安装后,建议记录发行版、架构、所用包格式和具体错误信息。需要继续排查时,这些信息比“Linux 版打不开”更有用。分享日志前应移除订阅 token、密码及私人服务器信息;同一个问题每次只调整一项设置,才能判断是哪一步改变了结果。