安装 Shadowrocket(小火箭)Linux 版,先确认发行版与 CPU 架构:Debian、Ubuntu 系通常选 deb,Fedora 等使用 dnf 的系统通常选 rpm,需要直接运行文件时再考虑 AppImage。本文给出本地安装命令、执行权限处理和启动失败排查;安装完成后,再导入从你的服务商处获取的订阅,而不是把安装成功等同于连接已经可用。
1. 先确认发行版,再选安装包
deb、rpm、AppImage 是不同的分发形式,不是三种代理协议。选择依据首先是系统的包管理器,其次是下载页标注的架构与运行条件。相同扩展名不代表适配所有 Linux 系统,文件能够下载也不代表当前机器能够运行。
| 系统环境 | 优先选择 | 安装或启动方式 |
|---|---|---|
| Debian、Ubuntu 及使用 apt 的衍生发行版 | deb | sudo apt install ./shadowrocket.deb |
| Fedora 及使用 dnf 的 RPM 系发行版 | rpm | sudo dnf install ./shadowrocket.rpm |
| 希望直接运行独立文件的桌面环境 | AppImage | 添加执行权限后,以普通用户启动 |
先在终端运行下面的命令。/etc/os-release 中的 ID 与 ID_LIKE 用于辨认发行版,uname -m 用于查看机器架构。不要仅凭桌面外观判断系统,也不要因为电脑使用同一种 CPU 就跳过依赖检查。
cat /etc/os-release
uname -m
例如,x86_64 与 aarch64 表示不同架构。下载时必须核对下载页是否提供与本机对应的构建;没有对应项时,不要用另一种架构的包试装。AppImage 同样受架构和系统运行库约束,并不是通用的架构转换工具。
2. 下载后按四步准备本地文件
以下命令中的 shadowrocket.deb、shadowrocket.rpm 和 shadowrocket.AppImage 是便于输入的本地文件名,不是服务器上的安装包文件名。先下载实际文件,再在文件管理器中重命名为对应名称;也可以保留原名,并把命令中的文件名替换为磁盘上的完整名称。
-
核对环境
打开终端,执行
cat /etc/os-release和uname -m,记下发行版与架构。结合下载页标注选择匹配的包。 -
获取文件
进入下载页的 Linux 区域,选择 deb、rpm 或 AppImage。等待浏览器完成下载,不要对仍在下载的临时文件执行安装命令。
-
打开所在目录
在文件管理器中找到安装包,使用“在终端打开”功能进入该目录。若文件确实位于
~/Downloads,也可执行cd ~/Downloads;目录本地化或自定义后应使用实际路径。 -
选择对应命令
deb 使用 apt,rpm 使用 dnf;AppImage 先执行
chmod u+x,再以普通用户运行。三条路径择一即可,无需把三种包全部安装。
开始前用 pwd 确认当前目录,用 ls -lh 确认文件存在。路径中的空格需要引号,例如 sudo apt install "./shadowrocket linux.deb"。这里的 ./ 明确表示当前目录中的本地文件,不能随意省去。
3. deb 安装:使用 apt 处理依赖
在 Debian、Ubuntu 等使用 apt 的系统中,优先通过 apt 安装本地 deb。它会读取包的依赖声明,并尝试从系统已配置的软件源补齐依赖。安装包来自本地,不代表整个安装过程都不需要联网。
sudo apt update
sudo apt install ./shadowrocket.deb
第一条命令刷新软件源索引;第二条命令安装当前目录中的文件。输入 sudo 密码时,终端通常不会显示字符或星号,这是终端的密码输入行为。确认提示中计划安装、升级或移除的项目后再继续,不要跳过异常的依赖变更提示。
- 出现文件找不到:运行
pwd和ls -lh,检查目录、大小写与文件名是否完全一致。 - 出现架构不匹配:重新核对
uname -m和下载项,不要添加强制忽略架构的参数。 - 出现依赖无法满足:先检查
sudo apt update是否成功,再确认发行版是否符合包的运行条件。 - 出现包管理器锁定:等待系统更新或其他安装任务完成,不要直接删除锁文件。
如果此前使用其他工具留下了未完成的依赖状态,可以先运行 sudo apt --fix-broken install,阅读修复方案后再确认。它处理的是系统的包依赖状态,不会让不兼容的安装包自动适配当前系统。安装成功后,从桌面的应用列表启动 Shadowrocket,不要用 sudo 启动整个图形应用。
4. rpm 安装:使用 dnf 安装本地包
在 Fedora 等采用 dnf 的系统中,使用本地 rpm 路径安装。rpm 是包格式,dnf 是能够处理依赖的软件包管理器;其他使用 rpm 格式的发行版不一定使用 dnf,应遵循该发行版的管理方式,而不是为此额外装一套包管理器。
sudo dnf install ./shadowrocket.rpm
dnf 会显示事务摘要,包括需要补充的依赖和可能的变更。若提示某项依赖不存在,先核对系统版本、软件源可用性以及安装包适用范围。不要为了消除提示而使用 --nodeps 强行绕过依赖,也不要随意替换系统库文件。
deb 路径核对
- 管理器
- apt
- 本地安装
sudo apt install ./shadowrocket.deb- 依赖来源
- 系统已配置的软件源
- 启动方式
- 安装完成后从应用列表打开
不要把 deb 文件交给 dnf,也不要省略本地文件路径。
rpm 路径核对
- 管理器
- 本文命令适用于 dnf
- 本地安装
sudo dnf install ./shadowrocket.rpm- 依赖来源
- 系统已启用的软件源
- 启动方式
- 安装完成后从应用列表打开
rpm 格式不等于所有 RPM 系发行版都能直接运行。
5. AppImage:添加执行权限后直接运行
AppImage 通常不通过 apt 或 dnf 注册为系统软件包。把文件放到用户目录中可长期保留的位置,添加执行权限,然后直接启动。不要一直放在可能被清理的临时目录,也不要把它当成 deb 或 rpm 交给包管理器安装。
chmod u+x ./shadowrocket.AppImage
./shadowrocket.AppImage
chmod u+x 只给文件所有者添加执行权限,不需要使用 chmod 777。从终端启动还能保留错误输出,便于区分权限问题、架构问题和运行库问题。双击没有窗口并不能直接证明应用已经在后台运行。
Permission denied:先检查执行权限;如果文件所在磁盘使用noexec挂载选项,即使有执行位也可能无法启动,应改放到允许执行的用户目录。Exec format error:优先检查架构与文件是否下载完整,添加执行权限不能解决架构不匹配。- 提示 FUSE 相关错误:部分 AppImage 运行时需要兼容的 FUSE 库,包名因发行版而异,按当前系统的软件包说明处理,不要盲目替换系统的 FUSE 组件。
- 提示
GLIBC版本或共享库缺失:核对系统运行条件;不要手工覆盖系统的 libc,也不要把未知来源的库复制进系统目录。
更新 AppImage 时,先退出正在运行的应用,再替换文件并检查新文件的执行权限。保留原有配置备份,但不要假定更换文件就会清除配置。deb、rpm 的本地安装也不等于已添加自动更新软件源,后续获取仍以本站下载页为准。
6. 安装成功后,分开检查配置与路由
安装解决的是“程序能否运行”,订阅与路由解决的是“连接如何建立、流量如何处理”。启动 Shadowrocket 后,先确认 Home 中的连接资料是否齐全,再检查 Config 与 Global Routing。本文不把某一平台的按钮位置当作所有 Linux 桌面环境的固定布局,入口以当前应用实际显示为准。
- 准备从你的服务商处获取的订阅链接,按 Subscribe 入口导入;导入后检查条目是否实际出现,更新后再次核对内容。
- 手动添加时,在 Add Server 中选择资料对应的 Type。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 的字段不能互相照搬。
- 核对地址、端口和凭据。服务端口由服务商提供,不要因为某些连接常用
443就自行改成该端口。 - 检查 Global Routing 当前姿态,再测试已知可访问的目标。应用能启动、配置能保存和连接能使用是三个独立的检查点。
Config
推荐按当前配置中的规则选择策略。规则应结合自己的需求核对,FINAL 决定未命中前面规则时的最终处理方式,并不固定等于代理或直连。
适合:已有可用规则配置,需要按目标分流
Proxy
对进入代理处理范围的连接使用代理策略。它适合与 Config 的结果做对照,但不能据此认定 Linux 中所有程序的流量都已经被接管。
适合:临时检查失败是否与规则选择有关
Direct
对进入处理范围的连接采用直连,用于对照本地网络访问结果。停留在 Direct 时,不应把网页可访问当作代理链路已工作的证据。
适合:对照直连与代理的访问差异
若浏览器与终端的访问结果不同,先检查两者是否使用同一个代理入口,以及各自是否读取系统代理或环境变量。不要凭空填写本地监听端口;应读取应用中实际启用的地址、端口和代理类型。修改包格式不能修复错误的订阅参数,也不能代替路由配置。
7. 常见问题:先看终端输出,再决定下一步
下载了 deb,系统却没有 apt,怎么办?
执行 cat /etc/os-release 确认发行版,再返回下载页选择适用格式。不要为安装一个 deb 临时给非 Debian 系统添加 apt,也不要先转换包格式来绕过兼容性检查。
AppImage 双击没反应,需要管理员启动吗?
先在文件目录执行 chmod u+x ./shadowrocket.AppImage,再执行 ./shadowrocket.AppImage 读取错误信息。普通启动不需要 sudo;根据输出排查权限、挂载选项、FUSE 或运行库问题。
安装完成却没有应用菜单入口,怎么办?
AppImage 直接运行不一定自动创建菜单入口,先从终端启动。deb 或 rpm 则先确认包管理器事务是否成功结束,再重新打开应用列表;不要把安装错误提示误当成已完成安装。
导入订阅失败,要重新安装 Linux 包吗?
先核对从你的服务商处获取的链接是否完整、是否过期,以及当前网络能否访问订阅地址。反馈错误时只提供经过遮盖的提示,不公开 token、UUID、密码或完整订阅链接。程序能够正常启动时,应先排查配置与网络,而不是反复重装。
向支持人员提供排查信息时,记录发行版、uname -m 输出、所选包格式、执行的命令与完整错误文本。将“安装依赖失败”“窗口无法启动”“订阅更新失败”“连接后目标打不开”分开描述,可以避免把不同阶段的问题混在一起。