UbuntuやDebianでは通常deb、Fedoraでは通常rpmを選びます。ファイルをそのまま実行したい場合はAppImageも選択肢です。Linuxに初めてShadowrocketをインストールする方向けに、ディストリビューションとCPUアーキテクチャの確認から、インストール、権限や依存関係への対処、利用中のサブスクリプションを使った接続確認まで解説します。パッケージ形式によってプロキシプロトコルが決まるわけではなく、利用可能なサービスが付属するわけでもありません。
まずディストリビューションとアーキテクチャを確認
Shadowrocket(Shadowrocket)のLinux版は、ファイルの拡張子だけで選べません。debとrpmは異なるパッケージ管理システムの形式で、AppImageは実行可能なアプリケーションファイルです。いずれも現在のCPUアーキテクチャと実行環境に合っている必要があります。まず、システム設定を変更しない次の読み取り専用コマンドをターミナルで実行します。
cat /etc/os-release
uname -m
/etc/os-release の ID と ID_LIKE で、ディストリビューションとその系統を確認できます。uname -m の出力が x86_64 なら一般的な64ビットIntel / AMDアーキテクチャ、aarch64 なら通常ARM64です。インストールパッケージは形式とアーキテクチャの両方が適合していなければなりません。AppImageも異なるCPUアーキテクチャではそのまま実行できません。
| システム環境 | 形式の選択 | 確認項目 |
|---|---|---|
| Ubuntu、Debianおよびその派生ディストリビューション | deb | CPUアーキテクチャ、ディストリビューションの依存関係 |
| Fedoraおよびdnfを使用するディストリビューション | rpm | CPUアーキテクチャ、rpmの依存関係 |
| 動作要件を満たすその他のデスクトップディストリビューション | AppImage | CPUアーキテクチャ、実行権限、FUSE環境 |
「rpmを使う」からといって、rpmを採用するすべてのディストリビューションに同じファイルをそのままインストールできるわけではありません。たとえば、パッケージ管理ツールがdnfとは限らず、基本ライブラリのバージョンも異なる場合があります。依存関係を満たせないときは、拡張子をdebに変えたり、依存関係を無視して強行したりせず、具体的なエラーを確認してください。
インストールパッケージの入手と情報の確認
当サイトのアプリのダウンロードページからLinuxのセクションに進み、現在提供されている形式とアーキテクチャに合うファイルを選びます。実際のインストールパッケージは、ダウンロードページから当サイト内の /dl/shadowrocket/ に解決されます。例からファイル名を推測して組み立てないでください。また、ブラウザーのダウンロード一覧に古いファイルが複数表示されても、任意のものを選ばないでください。
-
システムの確認
cat /etc/os-releaseとuname -mを実行し、ディストリビューションの系統とCPUアーキテクチャを控えます。 -
形式の選択
アプリのダウンロードページでLinux用のdeb、rpm、AppImageから選びます。掲載されていないアーキテクチャの場合、別のアーキテクチャ向けのファイルで代用しないでください。
-
ファイルの場所を確認
ファイルマネージャーでダウンロードの完了を確認し、完全なパスを控えます。以下のコマンドではパスを対話形式で入力するため、固定のパッケージ名に依存しません。
-
パッケージ情報の確認
debは
dpkg-deb -f、rpmはrpm -qpiで情報を確認できます。AppImageはまずfileでファイル形式とアーキテクチャを確認してください。
debをaptでインストール
UbuntuやDebianでは、ローカルのdebをaptでインストールする方法をおすすめします。ファイルを個別に展開する場合と異なり、aptはパッケージの依存関係も確認し、現在のシステムに設定されているソフトウェアリポジトリから必要なコンポーネントを取得しようとします。リポジトリを利用できない場合は、依存関係のダウンロード段階でインストールが止まることがあります。
read -r -p 'debファイルの完全なパスを入力:' pkg
dpkg-deb -f "$pkg" Package Version Architecture
dpkg --print-architecture
sudo apt install "$pkg"
前の2項目で確認したアーキテクチャに互換性がある必要があります。たとえば、システムが amd64 なら、対応するx86-64インストールパッケージを選びます。aptが表示するインストール計画を確認してから続行してください。sudoのパスワードを入力しても、通常ターミナルには文字が表示されません。キーボードの故障ではありません。
- 「ファイルが見つかりません」と表示される場合:ダウンロード先のフォルダーやブラウザーのページURLではなく、実際にダウンロードしたファイルの完全なパスを入力したか確認してください。
- 「依存関係を満たせません」と表示される場合:依存パッケージ名とバージョン要件をすべて記録し、まずシステムのディストリビューションがパッケージの要件に合っているか確認してください。
- ソフトウェアリポジトリのインデックスが古い場合:まず
sudo apt updateを実行し、完了してからインストールを再試行してください。これはインデックスを更新するコマンドで、システム内のすべてのソフトウェアをアップグレードするものではありません。 - 以前のパッケージ操作が未完了の場合:aptの案内を確認してパッケージ管理の状態を解決してください。インストール処理を何度も同時に開始しないでください。
インストール後、デスクトップのアプリメニューからShadowrocketを開きます。通常の起動トラブルを回避する目的で、GUIクライアント全体をsudoで実行しないでください。システムネットワークの権限が必要な場合は、実際に表示される許可手順に従ってください。
rpmをdnfでインストール
Fedoraなどdnfを使用するシステムでは、ローカルにダウンロードしたrpmをdnfでインストールします。依存関係が確認され、トランザクションの計画が表示されます。以下の情報確認コマンドは読み取り専用です。システムを実際に変更するのは最後のインストールコマンドです。
read -r -p 'rpmファイルの完全なパスを入力:' pkg
rpm -qpi "$pkg"
rpm --eval '%{_arch}'
sudo dnf install "$pkg"
rpmの情報に表示されるArchitectureが本機のアーキテクチャと一致するか確認してください。依存関係の競合や基本ライブラリのバージョン不足が表示された場合は、まず対象のディストリビューションを誤って選んでいないか確認します。依存関係の確認を省略するオプションを使って、無理にファイルをシステムへ書き込まないでください。
debの確認項目
- 対象のディストリビューション
- Debian、Ubuntu
- パッケージ情報
dpkg-deb -f "$pkg" Architecture- システムアーキテクチャ
dpkg --print-architecture- インストールコマンド
sudo apt install "$pkg"
ローカルパッケージは絶対パスで指定し、依存関係は現在のシステムのソフトウェアリポジトリで解決します。
rpmの確認項目
- 対象環境
- dnfを使用し、パッケージの依存関係を満たすシステム
- パッケージ情報
rpm -qpi "$pkg"- システムアーキテクチャ
rpm --eval '%{_arch}'- インストールコマンド
sudo dnf install "$pkg"
rpmはパッケージ形式、dnfはここで使うインストールツールです。同じものではありません。
AppImageは先に実行権限を設定
AppImageはdebやrpmのようにシステムのパッケージデータベースへ登録する必要はありませんが、「インストール不要」でも実行環境が不要という意味ではありません。ファイルには実行権限が必要で、実行可能な場所に保存する必要があります。また、実行時にFUSEが必要となる場合があります。まずユーザー自身のローカルディレクトリに保存し、ターミナルから起動してエラーを確認することをおすすめします。
read -r -p 'AppImageファイルの完全なパスを入力:' app
file "$app"
chmod u+x "$app"
"$app"
chmod u+x はファイル所有者に実行権限を追加するだけです。ファイルを誰でも書き込み可能にする必要はありません。最後の行では、入力したファイルを直接実行します。ターミナルに Exec format error と表示された場合は、まずアーキテクチャとファイル形式を確認してください。実行権限を繰り返し追加しても、アーキテクチャの不一致は解消しません。
Permission denied:ls -l "$app"で所有者と実行ビットを確認します。実行ビットが設定済みなら、ファイルのあるパーティションがnoexecマウントオプションでマウントされていないか確認してください。libfuse.so.2が見つからない場合:現在のAppImageの実行環境にFUSE 2互換ライブラリが必要です。ディストリビューションによってパッケージ名はlibfuse2またはlibfuse2t64の場合があります。使用中のシステムのリポジトリで確認し、該当するライブラリをインストールしてください。- ダブルクリックするとファイル選択ダイアログだけが開く場合:まず実行権限を設定して、ターミナルから一度起動してください。ファイルマネージャーでのダブルクリックではエラーログを確認できません。
GLIBCのバージョン不足が表示された場合:基本ランタイムライブラリの互換性の問題です。システムのlibcを手動で上書きせず、動作要件を満たすシステム環境を選んでください。
初回起動後の確認
ウィンドウが開いたことから分かるのは、プログラムが起動したということだけです。接続が利用可能とは限りません。以下の手順は、利用する事業者とサブスクリプションをすでにお持ちであることを前提としています。当サイトはノードやサブスクリプションを提供、販売、推奨していません。インストールパッケージに接続サービスの認証情報は含まれません。
Homeを開いて追加メニューを選びます。サブスクリプションの種類にSubscribeを選択し、お手元のサブスクリプションURLを貼り付けて保存してください。単一サーバーのアドレス欄にサブスクリプションURLを入力しないでください。Homeでサブスクリプションを更新し、想定した設定項目が表示されるか確認します。更新結果が空の場合は、サブスクリプションの有効期限、返却内容、アクセス状態を先に確認してください。すぐにアプリを再インストールする必要はありません。- ルールで通信を振り分けるには、
Configを開いて該当する設定がインポート済みで有効になっていることを確認し、Global RoutingをConfigに設定します。 - 利用可能な項目を選んで接続を開始し、必要に応じて表示されるネットワーク許可の手順を完了してから、アクセスできることが分かっているWebサイトでテストします。
問題を調べるときは、「サブスクリプションの更新に失敗」と「接続開始後にアクセスできない」を分けて考えてください。前者は設定の取得段階で起こり、後者にはサービスの状態、DNS、ルールが関係します。インストールパッケージの変更と複数の設定変更を同時に行うと、どの手順で結果が変わったのか判断しにくくなります。
Config
おすすめ現在有効な設定に従ってリクエストを処理します。ルールは上から順に照合され、最後の FINAL が、それ以前のルールに一致しなかったリクエストの処理方法を決めます。事前に有効な設定が必要です。
適した用途:Configの設定を済ませた後の日常的なルール振り分け。
Proxy
クライアントが処理するリクエストを、選択したプロキシポリシーへ渡します。ルールによる振り分けが問題の原因かどうかを比較して確認できます。ただし、クライアントが処理しないすべてのシステム通信の経路が変わるわけではありません。
適した用途:短時間のプロキシ接続確認、Configの処理結果との比較。
Direct
クライアントが処理するリクエストを直接接続で処理します。この状態で通常から直接アクセスできるWebサイトだけが開く場合、プロキシサービスが正常に動作しているとは判断できません。
適した用途:ローカルネットワークの確認、直接接続とプロキシ接続の比較。
最初のテストでは手動接続のままにしてください。以前に自動接続を設定した場合は、Settings → On Demand の現在の状態も確認し、既存の条件でテスト中に接続状態が変わらないようにします。利用できるオプションはプラットフォームによって異なるため、実際の表示に従ってください。
よくあるエラーの見分け方
エラーを記録するときは、コマンド、エラー全文、システムアーキテクチャを残してください。サブスクリプションURL、アクセストークン、サーバーのパスワードは公開ログに含めないでください。依存関係の問題をサブスクリプションの問題と取り違えないよう、以下では「インストール前」「起動時」「接続後」に分けて説明します。
debをダウンロードしたのに、Fedoraにインストールできないのはなぜ?
まず cat /etc/os-release でシステムを確認してください。Fedoraでは通常rpmを選び、sudo dnf install "$pkg" でインストールします。拡張子を変更したり、aptのないシステムでaptコマンドをそのまま使ったりしないでください。
AppImageに実行権限を設定しても開かないのはなぜ?
同じターミナルで "$app" を実行し、エラーを確認してください。アーキテクチャのエラーが出た場合は file "$app" と uname -m を照合します。FUSEが見つからない場合は互換ライブラリを確認し、権限エラーが続く場合はファイルの所有者とマウントオプションを確認してください。
インストールできたのに、サブスクリプションが空なのはなぜ?
Home に戻り、追加の種類が Subscribe になっていることを確認してから、自分のサブスクリプションを更新してください。リンクの有効期限が切れていないか、余計な空白が入っていないか、サーバーエラーが返されていないかも確認します。クライアントを再インストールしても、サーバーから空の内容が返される問題は解決しません。
接続後にWebページが開かない場合、再インストールが必要?
まず、ローカルネットワークから通常どおりWebサイトにアクセスできることを確認します。次に Global Routing、選択中の項目、有効な Config を確認してください。短時間だけ Proxy に切り替えて比較します。Configでのみ失敗する場合は、インストール形式を変更するのではなく、ルールの順序を優先して確認してください。
プラットフォームに合ったバージョンを入手
iPhone / iPad版はApp Storeから入手でき、料金は$2.99の買い切りです。システム要件はApp Storeの掲載内容をご確認ください。Mac(Appleシリコン / Intel)、Windows、Android、Linux版は無料です。iPhone / iPad版の製品情報は、デベロッパ名Shadow Launch Technology Limited、アプリID 932747118で確認できます。ダウンロードページでプラットフォームを選び、ガイドに沿ってお手元のサブスクリプションを読み込み、接続を確認してください。