
AndroSH v26.08.23
AndroSH No-Root Android上のマルチディストロLinux(Shizuku/ADB経由) - Arch, Fedora, Alpine, Debian, Ubuntu, Kali, Void, Manjaro, OpenSUSE & Chimeraを完全なシステム統合、proot隔離、Termux:X11 GUIで実行。
AndroSH - AndroidでLinuxディストリビューションを実行(root不要、ADB/Shizuku対応)
目次
- クイックスタート
- 機能
- 対応ディストリビューション
- 概要
- スクリーンショット
- アーキテクチャ
- インストール
- アップデート
- 使用方法
- ユースケース
- セキュリティとプライバシー
- コンポーネントとソース
- トラブルシューティング
- コントリビューション
- ライセンス
- 作者
- サポート
クイックスタート
[!Important] 開始する前に: まず Shizuku をインストールして実行してください。AndroSH が初めての場合は、下記の インストール セクションをすべてお読みください - Shizuku のセットアップとトラブルシューティングについて説明しています。
# In Termux
apt update && apt install -y python git
git clone --depth 1 https://github.com/ahmed-alnassif/AndroSH.git
cd AndroSH
pip install -r requirements.txt
python main.py install
androsh setup demo --distro debian --type stable
androsh launch demo
機能
- マルチディストリビューション: 複数のLinuxディストリビューションを並行して実行(Arch、Fedora、Alpine、Debian、Ubuntu、Kali、Void、Manjaro、Chimera、openSUSE)
- ADB/Shizuku 駆動の Linux: Android の昇格した Shell レイヤーを通じて本格的な Linux ディストリビューションを実行。Android システムと直接統合 - root は不要
- SQLite バックエンド: 環境を高速かつ確実に追跡
- 分離された環境: 各 Linux 環境は PRoot を通じてユーザー空間のファイルシステム/プロセス分離で実行
- GUI サポート: 完全なデスクトップ環境を実現する Termux:X11 に対応 - セットアップガイド
対応ディストリビューション
上記のすべてのディストリビューションは検証済みの rootfs ソースから提供され、分離された proot 環境で実行されます - root は不要です。
概要
AndroSH は、ADB/Shizuku 実行レイヤーを通じて PRoot を実行し、Android 上で複数の本格的な Linux ディストリビューションを展開・管理できるようにします。これにより、root なしで Android 側の昇格した実行が可能になる一方、Linux 環境内から Android システムへの直接統合を維持できます。
| 機能 | AndroSH | 一般的な代替手段 |
|---|---|---|
| 複数のディストリビューションを同時実行 | はい | 通常は1つのみ |
| 環境管理 | SQLite + CLI | 手動でのファイル管理 |
| Android システム統合 | ADB/Shizuku 実行 | ソリューションによって異なる |
| 複数の分離インスタンス | はい | 単一インスタンス |
| root の必要性 | 不要(ADB/Shizuku) | 多くの場合ブートローダーのアンロックが必要 |
スクリーンショット
| コマンド | プレビュー | 内容 |
|---|---|---|
androsh launch kali | 表示 | Kali NetHunter 環境を起動中 |
androsh list | 表示 | 利用可能なすべてのディストリビューション |
androsh lsd | 表示 | すでにインストール済みの環境 |
アーキテクチャ
Android Device → ADB/Shizuku Execution Context→ Proot Virtualization → Linux Environment(s)
graph TD
A[Android Device] --> B[ADB / Shizuku]
B --> C[Android Shell Execution Context]
C --> D[PRoot]
D --> E[Alpine]
D --> F[Debian]
D --> G[Ubuntu]
D --> H[Kali NetHunter]
E --> I[Android System Integration]
F --> I
G --> I
H --> I
I --> K[Android Command Execution]
I --> L[Android Filesystem Access]
I --> M[Android Network Access]
style D fill:#FF6B00,color:white
style I fill:#4CAF50,color:white
任意のディストリビューション内から、Android システムに直接アクセスできます:
# List installed Android packages
pm list packages -f
# Kernel info
cat /proc/version
# Android system properties
getprop | grep version
# Network routes
ip route show
インストール
必要条件
セットアップ
# Install prerequisites in Termux
apt update && apt install -y python git
# Get AndroSH
git clone --depth 1 https://github.com/ahmed-alnassif/AndroSH.git
cd AndroSH
# Install dependencies
pip install -r requirements.txt
# Make the `androsh` command available globally
python main.py install
[!Tip]
androsh setupを実行すると、AndroSH は Shizuku が正しく設定されているかを自動的に確認し、設定されていない場合は修正手順を案内します。
アップデート
cd AndroSH
git pull
pip install -r requirements.txt
使用方法
環境の展開
androsh setup production --distro debian --type stable
起動
androsh launch production
# You're now root inside the Debian environment
root@localhost:~# apt update && apt install python3 git
環境の管理
androsh list # See what's available to install
androsh lsd # See what's already installed
androsh clean production # Free up space / remove temp files
androsh remove production --force # Delete an environment
ディストリビューションの直接管理
androsh distro list # List available distros
androsh distro info ubuntu # Get details on a distro
androsh distro download alpine --type alpine-minirootfs --file alpine-edge.tar.gz
全コマンドリファレンス
すべてのコマンドとフラグについては AndroSH_Help.md を参照してください。冗長性の制御(--verbose / --quiet)やタイムスタンプの書式(--time-style)も含まれます。
ユースケース
Linux の学習
androsh setup classroom --distro ubuntu --type stable
apt install gcc python3-dev git curl wget
セキュリティ研究 / ペネトレーションテスト
androsh setup pentest --distro kali-nethunter --type full
apt install nmap metasploit-framework wireshark
軽量な開発環境
androsh setup devops --distro alpine --type alpine-minirootfs
apk add build-base git nodejs npm docker-cli
外出先でのワークステーション
androsh setup field --distro debian --type stable
apt install vim tmux htop net-tools
複数環境の同時実行
androsh setup frontend --distro ubuntu -t stable
androsh setup backend --distro debian -t stable
androsh setup security --distro kali-nethunter -t nano
androsh lsd
セキュリティとプライバシー
- Android の権限境界: Android 側の操作は ADB/Shizuku 実行コンテキストで利用可能な権限の範囲内で実行されます。Android の root は不要です。
- プロセス分離: 各環境は proot 経由でサンドボックス化されて実行されます
- 整合性チェック: SHA-256 チェックサムですべてのダウンロードを検証します
- テレメトリなし: データ収集は一切行わず、すべてデバイス上に留まります
- オープンソース: すべてのコンポーネントが監査可能です
コンポーネントとソース
| コンポーネント | ソース | 目的 |
|---|---|---|
| PRoot | ahmed-alnassif/proot | 静的リンクされた Android 最適化の自動ビルド |
| BusyBox NDK | Magisk-Modules-Repo/busybox-ndk | Android 向けのコア Unix ユーティリティ(tar、grep、awk など) |
ビルドパイプライン: PRoot builder · BusyBox NDK sources · AndroSH core
すべての依存関係はアップストリームのソースまで追跡可能で、セキュリティアップデートと同期が保たれています。
トラブルシューティング
壊れた環境のリセット
androsh setup <distro> --distro debian -t stable --resetup
一時ファイルのクリーンアップ
androsh clean <distro>
グローバルな androsh コマンドの再インストール
cd AndroSH
python main.py install
Shizuku の問題
- Shizuku が実行中で、AndroSH が承認されていることを確認してください
- 問題が解決しない場合は、デバイスを再起動して Shizuku サービスを復元してください
コントリビューション
コントリビューションとセキュリティ研究を歓迎します。現在の優先分野:
- パフォーマンス最適化
- デプロイツール
- セキュリティ強化
開発環境のセットアップ:
git clone https://github.com/ahmed-alnassif/AndroSH.git
cd AndroSH
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
ライセンス
GPLv3 - 商用および研究目的で自由に利用できます。
作者
Ahmed Al-Nassif
- GitHub: @ahmed-alnassif
サポート
- 便利だと感じたらリポジトリに Star を付けてください
- バグを報告するには Issue を開いてください
- 機能を提案したり、AndroSH の使い方を共有してください
Android の root を必要とせず、ポケットの中にプロフェッショナルな Linux 環境を。