LinuxデスクトップにShadowrocketをインストールする方向けに、ディストリビューションとCPUアーキテクチャの確認から、当サイトのダウンロードページでdeb・rpm・AppImageを選ぶ方法、インストール・起動・初回接続の確認までを解説します。コマンドでは、ここで説明するローカルのファイル名を使用します。ダウンロードファイルの元の名前ではありません。インストールの成否とネットワーク接続の成否は分けて確認し、依存関係や実行権限、設定の問題を切り分けましょう。
1. ディストリビューションとアーキテクチャを確認する
ShadowrocketのLinux用パッケージは、デスクトップの見た目ではなく、使用中のシステムに合わせて選びます。GNOMEやKDEなどのデスクトップ環境によってdebとrpmのどちらを使うかが決まるわけではありません。UbuntuとFedoraは似たデスクトップ環境でも、パッケージ管理の方式が異なります。ターミナルで次の2つの読み取り専用コマンドを実行し、ディストリビューションとマシンのアーキテクチャを確認してください。
cat /etc/os-release
uname -m
1つ目の出力ではIDとID_LIKEを確認し、ディストリビューションのパッケージ管理に関する説明も参照してください。2つ目の出力は、x86_64またはaarch64が一般的です。前者は通常、ダウンロードページのx64に、後者はARM64に対応します。パッケージ形式とアーキテクチャは別々の条件です。拡張子が同じでも、CPUに対応しているとは限りません。ダウンロードページに該当するアーキテクチャがない場合、別のアーキテクチャ向けパッケージを無理にインストールしないでください。
| システム環境 | 形式 | インストール方法 |
|---|---|---|
| Debian、Ubuntuおよびaptを使用する派生ディストリビューション | deb | aptでローカルファイルをインストールし、依存関係を解決する |
| Fedoraおよびdnfを使用するRPM系システム | rpm | dnfでローカルファイルをインストールし、処理内容を確認する |
| ダウンロードページに互換ビルドが掲載されているLinuxデスクトップ | AppImage | 実行権限を付与して起動する。システムの動作要件も満たす必要がある |
2. インストールパッケージを取得し、ローカルファイルを準備する
アプリのダウンロードページを開き、Linuxのセクションからインストールパッケージを取得します。形式とアーキテクチャを確認してから保存してください。この記事では第三者のダウンロード先を使わず、ターミナルからリモートのインストールスクリプトを取得することもありません。ブラウザーでのダウンロードが完了していない、ファイルサイズが0、または一時的な拡張子が付いている場合は、ダウンロードの完了を待ってください。
- ホームディレクトリに
shadowrocket-installフォルダーを作成します。 - 今回選んだインストールパッケージを1つだけそのフォルダーに入れ、別のアプリや古いパッケージが混ざらないようにしてください。
- 以下のコマンドをコピーしやすくするため、debファイルを
shadowrocket-local.debに、rpmファイルをshadowrocket-local.rpmにそれぞれ名前を変更します。AppImageの保存方法は第5節を参照してください。 - 変更するのはファイル名だけです。拡張子を変えて別の形式にしないでください。ファイル名を変更しても、ファイル内部のアーキテクチャや依存関係の要件は変わりません。
mkdir -p "$HOME/shadowrocket-install"
cd "$HOME/shadowrocket-install"
ls -lh
上記のファイル名は、ユーザーが自分のPC上で設定する操作用の名前であり、当サイトのインストールパッケージの元のファイル名ではありません。ダウンロード時の名前をそのまま使う場合は、以降のコマンドでファイルパス全体を実際の名前に置き換えてください。パスに空白が含まれる場合は、半角の二重引用符で囲みます。debとrpmの手順を両方実行しないでください。
3. deb:aptでローカルファイルをインストールする
DebianやUbuntuなどaptを使うシステムでは、先ほど作成したフォルダーに移動してから、ローカルのdebファイルをインストールします。コマンドの./は重要です。引数がソフトウェアリポジトリのパッケージ名ではなく、現在のフォルダー内にあるファイルであることを示します。インストールには管理者権限が必要です。依存パッケージは通常、システムに設定済みのリポジトリから取得するため、追加の依存関係をダウンロードする場合はネットワーク接続が必要です。
cd "$HOME/shadowrocket-install"
sudo apt install ./shadowrocket-local.deb
- aptが表示する追加・アップグレード・削除対象を確認してください。今回の操作と明らかに関係のない項目が大量に削除される場合は、いったんキャンセルし、そのまま確定しないでください。
- 処理内容を確認してから実行し、完了まで待ちます。ターミナルの入力待ちに戻り、インストールエラーが表示されていなければ、アプリ一覧からShadowrocketを探してください。
- ファイルが見つからないと表示された場合は、
pwdとls -lhを実行し、フォルダーとファイル名を確認してください。すぐにインストールコマンドを変更しないでください。 - アーキテクチャが一致しない場合は、ダウンロードページで対象のアーキテクチャを確認してください。依存関係を満たせない場合は、システムの対応範囲、リポジトリの設定、依存パッケージ名を確認します。
sudo apt updateはリポジトリのインデックスを更新するコマンドで、システム全体をアップグレードするものでも、Shadowrocketを直接インストールするものでもありません。エラーの原因がインデックスの古さだと明確な場合は、このコマンドを実行してからローカルファイルのインストールを再試行できます。システムのバージョンが必要な依存関係を提供できない場合、インデックスを繰り返し更新しても実行環境の非互換性は解決しません。
4. rpm:dnfで処理内容を確認してインストールする
Fedoraなどdnfを使うシステムでは、ローカルインストールの手順はaptの場合と似ていますが、指定するのはrpmファイルです。dnfはパッケージのメタデータをもとに、アーキテクチャと依存関係を確認し、実行される処理を表示します。インストール前に起動中のShadowrocketを終了し、プログラムファイルの更新中に古いプロセスが旧ファイルを使用しないようにしてください。
cd "$HOME/shadowrocket-install"
sudo dnf install ./shadowrocket-local.rpm
- ファイルが見つからない場合:現在のフォルダーと拡張子を確認し、debファイルをrpmに名前変更していないか確かめてください。
- 依存パッケージの提供元が見つからない場合:不足している項目を記録し、ディストリビューションとの互換性とリポジトリの状態を確認してください。同じ名前のシステムライブラリをむやみにダウンロードし、既存のファイルを上書きしないでください。
- パッケージの競合が表示された場合:別の形式のパッケージや古いパッケージをインストールしていないか確認し、システムのパッケージマネージャーでインストール済みの項目を調べてください。システムディレクトリ内のアプリファイルを手動で削除しないでください。
- 処理がキャンセルされた場合:キャンセル直前に表示されたメッセージを読み直し、ユーザーによる拒否、権限の問題、依存関係の確認失敗のどれに当たるか確認してから、次の対応を決めてください。
インストールが完了したら、アプリ一覧から起動します。起動アイコンがすぐに表示されない場合は、アプリ一覧を更新するか、デスクトップに再ログインしてください。「アイコンが見当たらない」だけでインストール失敗と判断しないでください。ターミナルに処理失敗が明示されている場合は、デスクトップのアイコンを繰り返しクリックするのではなく、まずインストールエラーを解消します。
5. AppImage:実行権限を付与してターミナルから起動する
AppImageは通常、単一のファイルとして保存して実行します。debやrpmのように、同じ形式のインストール処理がシステムに登録されるわけではありません。あらゆるLinux環境で動作するとは限らず、CPUアーキテクチャ、基本ランタイムライブラリ、グラフィカルセッション、一部のビルドで使われるFUSEの仕組みが起動に影響する場合があります。まずダウンロードページの説明を確認し、この形式を選ぶか判断してください。
ホームディレクトリにApplicationsフォルダーを作成し、ダウンロードが完了したAppImageを移動して、ファイルマネージャーでShadowrocket.AppImageに名前を変更します。その後、次のコマンドを実行してください。chmod u+xはファイルの所有者に実行権限を追加するだけです。アプリに全ユーザーの書き込み権限を与える必要はありません。
mkdir -p "$HOME/Applications"
cd "$HOME/Applications"
chmod u+x ./Shadowrocket.AppImage
./Shadowrocket.AppImage
2つの起動方法
ファイルマネージャーからダブルクリック
- ファイルのプロパティで実行が許可されていることを確認します。
- ダブルクリックしてもファイルの内容が表示される、または反応がない場合は、ターミナルから起動してください。
- 初回起動後にファイルを移動しないでください。自分で作成したショートカットが機能しなくなる場合があります。
ターミナルから直接実行
- ファイルのあるフォルダーに移動し、
./を付けて起動します。 - FUSE、共有ライブラリ、ディスプレイサービスに関するエラーを記録してください。
- テストを終了し、アプリが安定して起動することを確認してから、デスクトップのショートカットを作成します。
まずターミナルでファイルを実行できるか確認してから、デスクトップのショートカットを設定してください。通常の権限確認の代わりに、グラフィカルアプリ全体をsudoで起動しないでください。
Permission deniedが表示された場合は、実行権限だけでなく、ファイルがあるパーティションがnoexecでマウントされていないかも確認してください。FUSE関連のエラーが表示された場合は、使用中のディストリビューションのドキュメントで必要なランタイムコンポーネントを確認します。どのディストリビューションでもコンポーネント名が同じとは限りません。AppImageがアプリメニューに自動表示されなくても、ファイルが破損しているとは限りません。
6. 初回起動:インストールと接続を分けて確認する
メインウィンドウが開いたことから確認できるのは、アプリの起動までです。続いて、ユーザーがすでに所有しているサーバーまたはサブスクリプションを設定する必要があります。当サイトではノードやサブスクリプションの提供・販売・推奨は行っていません。初回確認では、まず現在のネットワークが使える状態を保ち、Homeで読み込んだ内容を確認します。アドレス、ポート、認証情報に漏れがないことを確認してから接続してください。テストを通すために、適当なポート番号を入力しないでください。
- Homeでユーザー自身が用意した設定を読み込みます。サブスクリプションは更新可能な設定ソースの集合であり、インストールパッケージには含まれません。
- 選択中の項目が使用予定のサーバーであることを確認し、期限切れの項目を誤って選んでいないか確認してください。
- Global Routingの現在のモードを確認してから、対象を明確にしたアクセス確認を一度行います。モードを切り替える前に元の設定を控え、テスト後に戻してください。
- ウィンドウは正常に開くのに接続できない場合は、認証、接続タイムアウト、ドメイン名の名前解決、ルールの適用状況を個別に確認してください。この段階では設定を先に調べ、すぐにアンインストールして再インストールしないでください。
Config
おすすめ現在の設定ルールに基づいて、対象となる通信の処理方法を決定します。ルールによってPROXY、DIRECT、REJECTなどが指定されます。先行するルールに一致しない通信は、FINALなど後続のルールで処理され、すべてがデフォルトで直接接続になるわけではありません。
適しているケース:設定内容を確認済みで、普段使うルールによる振り分けを確認したい場合
Proxy
対象となる通信をグローバルプロキシとして処理し、Configの結果と一時的に比較できます。サーバーの認証失敗は解決できず、対象外のすべてのシステム通信が自動的にプロキシを経由するわけでもありません。
適しているケース:サーバーへの接続が正常で、ルールがアクセスに影響しているか確認したい場合
Direct
対象となる通信を直接接続し、基本的なネットワーク状態を確認します。現在のネットワークで宛先に接続できない場合、Directに切り替えてもその状況は変わりません。
適しているケース:基本的なネットワーク接続とプロキシ接続の結果を比較したい場合
まとめ:現象を再現できる状態で記録してから、再インストールを検討する
メインウィンドウは開くものの、Configを使用した場合だけアクセスに問題があるなら、まずConfigで適用されているルールを確認してください。AppImageでウィンドウ自体が開かない場合は、ターミナルの起動エラーを確認します。問題を分けて調べれば、設定や実行環境の問題を再インストールで覆い隠さずに済みます。
7. 更新・アンインストール・よくあるエラー
更新前に、アプリのエクスポート機能で自分の設定をバックアップし、サブスクリプションの認証情報も安全に保管してください。deb・rpmのパッケージ管理への登録とAppImageファイルの置き換えは、管理方法が異なります。当サイトから新しいパッケージを入手しても、実行中のプロセスが自動的に切り替わるわけではありません。更新後は古いプロセスを終了してアプリを再起動し、設定が保持されているか確認してください。
- debの更新:対応するアーキテクチャの新しいパッケージをダウンロードし、ローカルファイルに対して
apt installを実行します。パッケージマネージャーがパッケージ情報をもとに、更新として扱うか判断します。 - rpmの更新:ローカルファイルに対して
dnf installを実行する際、処理内容が意図した更新として認識されているか確認してください。ダウングレードや競合に関する警告を無視しないでください。 - AppImageの更新:アプリを終了してから元のファイルを置き換え、実行権限を再確認します。新しくダウンロードしたファイルには、以前のファイルの実行権限が引き継がれるとは限りません。
- アンインストール:deb・rpmは、システムのソフトウェア管理ツールで正しいパッケージ名を確認してから削除します。AppImageはアプリを終了し、ファイルと自分で作成したショートカットを削除します。個人設定が保持されるかどうかは別途確認してください。アプリを削除しても、すべてのユーザーデータが消去されるわけではありません。
aptでパッケージが見つからない場合、ダウンロードを間違えたのでしょうか?
コマンドの./shadowrocket-local.debに./が残っているか確認してください。pwdとls -lhを実行し、ファイルが現在のフォルダーにあるか確認します。ファイル名が異なる場合は実際のパスに書き換えてください。この記事で使うローカルの変更後ファイル名を、ダウンロード時の元の名前と混同しないでください。
Exec format errorが表示され、実行権限を付けても直らない場合は?
まずuname -mを実行し、ダウンロードしたパッケージのアーキテクチャを確認してください。このエラーは、実行ファイルとマシンのアーキテクチャが一致しない場合によく発生し、ファイルの内容に異常がある場合にも起こります。実行権限を付けてもARM64用プログラムがx64用に変わることはありません。対応するビルドを入手し直してください。
AppImageをダブルクリックしても反応がない場合、何度もクリックしてよいですか?
繰り返し起動しないでください。保存先のフォルダーに移動し、./Shadowrocket.AppImageを実行して、最初に表示されたエラーを記録します。共有ライブラリやFUSEの不足が表示された場合は、使用中のディストリビューションに応じて実行時の依存関係を確認してください。権限エラーの場合は、実行権限とマウントオプションを確認します。
インストール後もWebページを開けない場合、パッケージ形式を変えるべきですか?
まずShadowrocketが正常に起動することを確認し、次にHomeで選択中のサーバー、Global Routing、Configのルールを確認してください。アプリ自身の通信と、システムで実際にプロキシ対象となる範囲も区別します。debからAppImageに変更しただけでは、サブスクリプションの項目、認証情報、ルールの内容は修正されません。
Shadowrocketの入手方法と使い方
iPhone / iPad版はApp Storeで2.99米ドルの買い切り、Mac / Windows / Android / Linux版は無料です。Mac版はAppleシリコンとIntelに対応しています。iPhone / iPadのシステム要件はApp Storeの掲載情報をご確認ください。ダウンロードページでお使いのデバイスに合った版を入手し、ガイドに沿って読み込みと接続の手順を確認してください。