AndroidのコアはLinuxですよね。Androidは世界で20億台が稼働しており、年間10億台以上が出荷されているそうで、おかげでLinuxは「世界一多くのデバイスで動くカーネル」となっています。
といっても、Androidと普通のLinuxでは使い勝手が全然ちがいますよね。Linux PCのユーザーなら、Androidでも使い慣れたコマンドが使いたくなります。そこでオススメのアプリが「Termux」です。インストールするだけで、「Linuxの端末」に近い環境を使うことができます。こういったアプリはRoot化が必要なことが多いのですが、TermuxはRoot化が不要でストアからインストールするだけです。しかも、パッケージ管理はUbuntuやDebianでおなじみの「APT」を使うことができます。そして、無料かつオープンソースです。
Termuxの特徴
基本的なLinuxコマンドが使える
BashやZshといったシェルから、ほとんどのメジャーなコマンドを実行することができます。find、grep、lessといった定番のツール、VimやEmacsといったエディタ、sshやcurl、rsync、ncといったネットワークツールなどなど、Linuxで良く使われるコマンドの多くが使えます。Androidを使っていて「Linux PCならコマンドで簡単にできるのになぁ」と思うことがある人なら、入れておく価値のあるツールです。
aptコマンドでパッケージ管理ができる
「apt」コマンドといえば、UbuntuやLinux Mint、Debianのパッケージ管理でお馴染みですよね。Termuxもaptコマンドで、パッケージの追加や削除、更新ができます。
各種開発ツールも動く
Python、PHP、Ruby、Perl、golangといった言語、GitやSubversionといったバージョン管理システム、そしてNode.jsまで、開発に必要なツールの多くも動きます。どこでも開発したいという人に便利ですね。
サーバープログラムも動く
WebサーバーやSSHサーバーといったサーバープログラムも動作します。ただし非rootで動作しているため、1024以下のポート番号は使用できません。そのため、パッケージでSSHサーバーは8022、Webサーバーは8080をListenするよう設定されます。
複数のセッションを開くことができる
画面左端から右のスワイプすると、別セッションを開くことができます。SSHサーバーに接続して作業しているときに、別セッションを開いてローカルのコマンドを実行する、といった使い方ができますね。なお、普通のLinuxと同じように、screenやtmux、byobuを使うこともできます。
キーボードでさらに便利に使える
ちょっとしたコマンドを実行するなら、スクリーンキーボードでも十分使えます。Android標準のキーボードでも使えますが、CtrlやTabといったキーがある「Hacker’s Keyboard」に切り替えるのがオススメです。
ガッツリ使うなら、BluetoothもしくはUSB接続のキーボードを接続しましょう。Linux PCと同じ感覚でコマンドを実行することができるようになります。「日本語106/109キーボードレイアウト」を使えば、日本語配列にしたり、CapsキーとCtrlキーを入れ替えたりできて便利です(英語配列設定でCtrlとCapsを入れ替えることもできます)。
Termuxのインストール
Termuxは、通常のAndroidアプリと同様、Playストアから簡単にインストールできます。
[appbox googleplay com.termux]
インストール後、Termuxを開いてコマンドを打てるようになったら、以下のコマンドを実行してパッケージを更新しておきましょう。
apt update
apt upgrade
ストレージのセットアップ
TermuxからAndroidの共有ストレージや外部ストレージ(SDカードなど)にアクセスするには、以下のコマンドを実行します。
termux-setup-storage
Android 6.0以降の場合、以下のような確認ダイアログが表示されるので、「許可」をタップしてください。
すると、以下の通り、~/storage/に各ディレクトリへのシンボリックリンクが作成されます。
- ~/storage/shared
- アプリの内部共有ストレージ
- ~/storage/downloads
- ダウンロードディレクトリ
- ~/storage/dcim
- カメラで撮った写真やビデオのディレクトリ
- ~/storage/pictures
- ピクチャディレクトリ
- ~/storage/music
- 音楽ディレクトリ
- ~/storage/movies
- 動画ディレクトリ
- ~/storage/external
- 外部ストレージ(存在する場合のみ)
これらのディレクトリを使うことで、他のアプリとファイルをやりとりすることができます。
まとめ
以上で、基本的な設定は終了です。あとは、必要なコマンドをaptで追加して、自分好みに環境を整えてください。opensshパッケージを入れて、scpでカスタマイズ済みの設定ファイルをLinux PCからコピーするのもいいですね。
Termuxを使えば、使い慣れたsshコマンドでリモートサーバーに接続したり、開発ツールを入れて開発できるようになります。ポート番号さえ変更すれば、サーバープログラムだって動きます。うまく工夫すれば、普通のLinuxと同じ感覚で使えるようになるので、「Termuxがあるから、ノートPCやタブレットを持ち歩かなくてもいいや」っていう人も増えるんじゃないでしょうか。
コメント
こんにちは。
記事の中に
> aptコマンドでパッケージ管理ができる
> 以下のコマンドを実行してパッケージを更新しておきましょう。
> apt update
> apt upgrade
とありますが、現在のTermuxでは、 apt コマンドの代わりに pkg コマンドを使用することが強く推奨されているようです。(公式wikiの「Package Management」ページに記載)
実際に試してみたところ、 pkg コマンドでも apt コマンドと変わらずに「pkg update」「pkg upgrade」などが実行できました。
よろしくお願いします。