MiracleJobLogo
エンジニアのエンジニアによるエンジニアのためのサイト
News 07/19 おすすめ情報に 『 【資格取得者速報】 Aさん 「 Microsoft Security, Compliance, and Identity Fundamentals」 』 を追加しました。
会員登録するとキャリア診断やサイトに参加することができます。
あなたにおすすめな技術情報、資格、仕事などをお知らせします。

無料会員登録


パスワードを忘れた場合
LINEで送る
MiracleJobBanaLeft1
MiracleJobBanaLeft2


【Termux】AndroidスマートフォンでLinuxを使う方法
profile-img
投稿者: OtacCREさん
投稿日:2023/06/30 14:24
更新日:2023/06/30 14:25
like-img
分類
技術
テクノロジー
全般
キャリア
運用・保守 / 構築 / 設計
投稿内容

今回は、外出先でもどこでもLinuxを使えるようにするTermuxについて紹介します。


1. Termuxとは

Termuxとは、Androidスマートフォン上でLinuxを動かすアプリケーションです。

Android上で動かしているため、Root権限等の関係で完全な機能は使用できませんが、AndroidでPython等のプログラムを実行したりファイルサーバー等簡易的なサーバーを構築することもできます。


2. Termuxをインストールする

TermuxはGoogle Play Store上からもダウンロードはできますが今後配信停止予定があったり使用できない機能があるため、以下の方法でAPKファイルからインストールすることを推奨します。

 (APKとは、Androidアプリケーションをストア以外から手動でインストールするパッケージファイルです)

まず、APKでインストールができるように設定します。

    手順:端末の設定で[アプリと通知]➡[Chrome(APKファイルを開くアプリ)]➡詳細設定と開き、[不明なアプリをインストール]のスイッチをオンにします

次に、以下のアプリ配信サイト[F-Droid]からTermuxをダウンロードします。

  Termux | F-Droid - Free and Open Source Android App Repository




ダウンロードが完了したら、ダウンロード完了の通知をタップしインストールを行います。

インストールが完了したら、アプリ一覧にTermuxが追加され使えるようになります。


3. Termuxを使用する

パッケージのインストールについて、Linuxで有名なOSであるUbuntuでは、aptを使用しますが、Termuxではpkgコマンドを使用します。

例)パッケージの更新

  pkg update

  pkg upgrade

例)Zshのインストール

  pkg install zsh


  (起動時にZshで起動する設定)

  chsh -h zsh


また、デフォルトのままではTermux上でAndroidのストレージへアクセスすることはできませんが、以下のコマンドを実行しアクセス権限を取得することでストレージへアクセスすることもできます。

  termux-setup-storage

実行後[./storage/shared]に内部ストレージのシンボリックリンクが作成され、ストレージへアクセスすることが可能になります。


バックグラウンドで常時起動させた状態にするには、

  termux-wake-lock

を実行してアプリが終了されないようにできます。

※バッテリーの消費が激しくなる可能性があります。



~ SSHについて ~

Termuxへssh接続するには、まずOpenSSHをインストールし起動する必要があります。

  pkg install openssh

インストール後、「sshd」と実行し、opensshを起動します。


別の端末からLinuxへ接続して操作する場合は通常、ポート22を使用しますが、Termux の場合はポート8022を指定しないと接続ができないという特徴があります。

オプション「-p」でポートを指定することで、外部からTermux へssh接続ができます。

例) ssh -p 8022 ユーザー名@Android端末のipアドレス

※ユーザー名は、「whoami」コマンドで確認できます。


まとめ

いかがでしたか?Termux についてざっくりとまとめてみました。

Termuxをインストールすることで、Linuxのような機能が使えるようになるので、古い端末にインストールして小型サーバーを構築したり、手持ちのスマートフォンでプログラムを動かせる等可能性がとても幅広くなります。

さらに、viコマンドでファイルにプログラムを記述して保存して動かすなんてこともできちゃうので、PCいらずでスマートフォン一台で完結させることができます。

私の場合はPythonで記述した指定時間にLINEに通知を送信するbotを動かすプログラムをメインで使用しているスマートフォンで動かしています。

コメント


MiracleJobBanaRight1
MiracleJobBanaRight2
MiracleJobBanaRight3