ホームページ >運用・保守 >Linuxの運用と保守 >Linuxデプロイの用途は何ですか
linuxdeploy は、Android デバイスに Linux 環境をデプロイするために使用されます。原理は、Android の Linux 層で chroot または proot コンテナを実行し、コンテナ内で準備した別の Linux システムを実行することです。 Linux Deploy を使用する前に、電話機の Root 権限を取得する必要があります。
#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。
Linux Deploy は、Android デバイスに Linux 環境をデプロイできるアプリケーションです。その原理は、Android の Linux 層で chroot または proot コンテナを実行し、コンテナ内で準備した別のコンテナを実行することです。システム。これは、私たちがよく知っている仮想マシン テクノロジとは異なることに注意してください。新しい Linux システムは、Android システムと並行して実行されます (専門家以外の人には、詳しく説明しないでください)。
Linux Deploy を使用する前に、 携帯電話の Root 権限を取得する必要があります (必須) . Root 権限を取得した後、元のマシンに付属の Linux コマンド セットが不完全なため、Linux コマンド セットを拡張するには Install Busybox が必要です (インストールすることはできません) 。
Linux Deploy は、Google ストアにインストールする必要がありますが、他の Android アプリ ストアでは利用できません。以下に記載されているソフトウェアは、Google ストアでのみインストールできます。ダウンロード アドレスは、ページの下部にも記載されています
インストールが完了したら、Linux Deploy を使用して Android デバイスに Ubuntu システムをデプロイします。
インターフェースの右下にある「ダウンロード」アイコンをクリックして、設定ファイルを入力します。 設定インターフェースで次の設定を行います(開発者がなぜこのような「ダウンロード」アイコンを設定ファイルのアイコンとして使用するのかはわかりません)設定ファイル設定インターフェース):
コンテナ化方法: "chroot"
リリースバージョン:"Ubuntu"
アーキテクチャ: デフォルト値を維持します
リリースバージョン: "yakkety" (Ubuntu 16.10)
ソースアドレス: http: //mirror.tuna.tsinghua.edu.cn/ubuntu -ports/(ここでは、デフォルトの方法でデプロイします。つまり、ソフトウェア ソースから Linux コンポーネントと必要なソフトウェア パッケージをダウンロードしてデプロイします。デフォルトのソース速度が優れていないため、 , 昼も夜もダウンロードを避けるために、ここでは清華大学のオープンソースのミラーソースを使用します。リポジトリ方式(後の記事(後述)を使用してデプロイする場合、ここの「ソースアドレス」には次のように入力する必要があります)リポジトリ ファイル (接尾辞 tgz/tar.gz) ファイルのローカルまたはリモート パス)
インストール タイプ: このオプションには、「ディレクトリ」と「ファイル」の 2 つの候補があります。 Linux で、/data パーティションの残りのスペースが 2g 以上である場合は、「ディレクトリ」インストール方法を使用することをお勧めします。Linux に精通している場合、または /data パーティションの残りのスペースが 2g 未満の場合は、「ディレクトリ」インストール方法を使用することをお勧めします。 「ファイル」インストール方法。ここでは、操作の便宜上、「ディレクトリ」インストール方法を使用していますが、実際の使用では、/data パーティションのスペースを占有しないようにするために、「ファイル(ミラー)」インストール方法を使用することをお勧めします。
インストール パス: [インストール パス] で [ディレクトリ] を選択すると、このオプションはシステムがインストールされるパスを定義します。デフォルトのパスは ${ENV_DIR}/rootfs/linux
です。つまり、/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux
ディレクトリにインストールされます。 [インストール タイプ] で [ファイル] を選択すると、このオプションは Linux システムがインストールされるイメージ ファイルを定義します。デフォルト値は 外部ストレージ/linux.img
です。
イメージ サイズ (MB) (インストール タイプで「ファイル」を選択した場合に使用可能): このオプションは、システムが配置されているイメージ ファイルのサイズを定義します。システムのインストール前に、設定されたイメージを含むファイル
ファイル システム (インストール タイプが「ファイル」を選択する場合に利用可能): 「自動」を選択します。
ユーザー名: このオプションは、システムにログインするときのユーザー名です。デフォルトは「android」ですが、任意に変更できます。
ユーザー パスワード: このオプションは、Ubuntu システムのユーザーのパスワードであり、自分の習慣に従って入力できます。
特権ユーザー: デフォルト値をそのまま使用します
DNS サーバー: デフォルト値を維持することも、DNS サーバー アドレス (114.114.114.114 など) をカスタマイズすることもできます。
ローカリゼーション: デフォルト値 POSIX を維持することをお勧めします。他にもsshなどのニーズがある 返された結果が中国語、またはグラフィカルインターフェースの表示言語が中国語の場合は、「zh_CN.UTF8」
を選択 INIT/MOUNTS項目:必要に応じて設定可能必要ない場合は無視できます。
SSH サーバーの起動を許可する: このオプションをオンにします
SSH 設定: デフォルトのままにします
グラフィカル インターフェイスの起動を許可する: 必要に応じて、このオプションを設定できます。ここでは、このオプションは当面オンにしません (後ほど、グラフィカル インターフェイスの展開方法を記事で紹介します)。
設定が完了したら、リターンキーを押してアプリケーションのメインインターフェイスに戻り、メニューキーを押して「」を選択します「インストール」をクリックして、Linux システムを起動します。インストールでは、インストール プロセス中にネットワーク接続を維持する必要があります (WIFI 環境でインストールすることをお勧めします。これには、約数百メガバイトのトラフィックが必要です)。
ターミナル出力「>>>deploy」が表示されると、インストールが開始されたことを意味します。
# ターミナル出力「」が表示されると、インストールが開始されます。
メイン インターフェイスの下にある [開始] ボタンをクリックして、新しくインストールされたシステムを開始し、 「停止」でシステムを停止します。
# ここでは、システム導入部分について説明します。 デプロイ後、lJuiceSSH/ConnectBot などの SSH ツールを使用してシステムにログインする必要があります (ここでは例として JuiceSSH を使用します)。
システムが正常に起動したら、JuiceSSH を開き、右下隅にある [接続] - ボタンをクリックして、新しい接続インターフェイスに入ります: ニックネーム: で入力できます。例として「Localhost - Android」を使用します。 タイプ: SSH アドレス: 127.0.0.1 認証: [新規] を選択して、[新しい認証] インターフェイスに移動します。ニックネーム: 自由に入力することもできます。例として「 Localhost - Android」も使用します。 ユーザー名: 「プロファイル設定」インターフェースの「ユーザー名」を入力します。デフォルトは android です。 パスワード: 入力します。 「プロファイル設定」インターフェースの「ユーザーパスワード」 右上隅の「√」アイコンをクリックして保存します「新しい接続」インターフェースに戻り、もう一度「√」アイコンをクリックして保存し、「接続リスト」で新しく作成したものをクリックします。このプロジェクトは、展開したばかりのシステムに接続されています。接続が成功すると、インターフェイスは次のとおりです:通常のユーザーである Android を介してシステムにログインするため、次にスーパー ユーザー (root) のパスワードを設定し、ユーザーとして機能する必要があります。 super user システムにログインします:
ターミナルに入力します:
sudo passwd root
ターミナルは、ユーザーに root ユーザーのパスワードを入力するよう要求し、次のように入力します。確認のためにもう一度入力します(パスワードを入力するときのパスワードは表示されません(*も表示されません)。 設定が完了したら、ターミナルでコマンド su を入力し、先ほど設定した root ユーザーのパスワードを入力して、パスワードに切り替えます)ルートユーザー。
ファイル管理: 「ディレクトリ」方式で Linux システムを展開する場合、R.E. マネージャーを直接使用して /data/user/0/ru.meefik.linuxdeploy/env/ にアクセスできます。 Rootfs/linux
は新しいシステムのファイルを管理できます。「ファイル」を通じて Linux システムをデプロイする場合、ファイルの管理やその他の操作を SFTP に依存する必要があります (もちろん SSH を使用しても問題ありませんが、それでもSFTP の方が便利だと感じます)。通常のユーザーとして SFTP にログインすると、権限の理由により、ほとんどのファイルを操作する権限がありません。したがって、SFTP にスーパーユーザーとしてログインする必要があります。ただし、デフォルト設定では root ユーザーは SSH および SFTP にログインできないため、次の設定を行う必要があります。
Linux Deploy でデプロイされたシステムを起動し、Android ユーザーとして SSH にログインします。
sudo apt-get install -y vim #Install vim editor
もちろん、システムに付属の vi エディターを使用することもできます。 vi エディターに慣れているので、vi エディターを使用してファイルを編集することもできます。 vim エディターのインストール後、ターミナルでの実行を続けます:
vim /etc/ssh/sshd_config #vim エディターを使用して /etc/ssh/sshd_config ファイルを開きます
Afterファイルを開き、「i」と入力して編集モードに入り、ターミナルの空白の位置をクリックして特殊キー キーボードをポップアップ表示します。上下のカーソルを使用してファイルをスクロールし、ファイルの #Authentication セクションで PermitRootLogin 項目を見つけます。ファイルを「はい」に変更し、変更が完了したら、特殊キーの「ESC」キーをクリックして編集モードを終了し、キーボードで「wq!」と入力して保存し、ファイルを強制終了してファイルの編集操作を完了します。ファイル。
Linux Deploy を開き、Linux システムを停止してから起動します。 「Turbo Client」 - サイドバー - 新しいアカウントの作成 - SFTP を開き、新しい SFTP 接続を作成します (ES ファイル エクスプローラー (ESFile Explorer) や SE ファイル マネージャー (ソリッド エクスプローラー) などの一部のファイル マネージャーにも SFTP 機能があります。 TurboFTP をインストールしたくない場合は、代わりに使用できます):
## ここで: ユーザー名: root パスワードは、設定したばかりの root ユーザーのパスワードです。ホスト名は 127.0.0.1 です。他の項目はデフォルトのままにしてください。右上隅の [保存] アイコンをクリックして、設定を保存します。接続中サイドバーのリストを使用します。 root ユーザーは SFTP に接続し、ファイルを管理します。 もちろん、sshd_config ファイルを変更した後です。 Linux システムを停止して起動する場合、root ユーザーとして直接 SSH に接続することもできます。インストールを紹介した後、アンインストールを紹介しましょう~次の方法で Linux Deploy を完全にアンインストールできます: 1. 「ディレクトリ」方式を使用して Linux システムを展開する場合は、Linux Deploy で Linux システムを「停止」し、Linux Deploy を直接アンインストールし、電話を再起動して完全にアンインストールします。2. 「ファイル」を使用する場合は、 ( 「ミラー」方式で導入された Linux システムの場合は、まず Linux システムを「停止」してから、内蔵ストレージに配置されたイメージ ファイルを削除する必要があります。イメージ ファイルのパスは、前述の「インストール パス」です。 Linux システムを展開しています。この項目が変更されていない場合、ミラー パスは 外部ストレージ/linux.img
となり、Linux Deploy をアンインストールし、電話機を再起動して完全にアンインストールします。
グラフィカル環境をインストールします
次の構成項目を変更します:
INIT: チェック: カスタム スクリプトの実行を有効にする (INIT の他の構成は変更されません)
グラフィカル インターフェイス:
チェックボックス: グラフィカル インターフェイスの起動を許可します。
グラフィック サブシステム: VNC
グラフィカル インターフェイスの設定: デフォルト構成を維持します
デスクトップ環境: 必要に応じて選択します。ここで選択したものは LXDE
## 設定が完了したら、メインインターフェイスに戻り、「メニューキー」を押して「設定」を選択します。設定が有効になります:中国語フォント ライブラリをインストールした後、次のコマンドを実行して VNC:
vncserver
ターミナルは次の結果を返します:
新しい 'X' デスクトップは localhost:1 /home/android/.vnc/xstartup で指定されたアプリケーションの起動ログ ファイルは /home/android/.vnc/localhost:1 .logCopy vncserver が正常に起動したことを証明します。
(ある時点で、
コマンドを初めて実行するときに、システムは 8 桁未満の VNC パスワードを設定するように要求することに注意してください。パスワードを 2 回入力する必要があります。 VNC パスワードの設定が完了するとプロンプトが表示されますが、無視して
n と入力して送信します)グラフィカル インターフェイスに入ります:
アドレス: 127.0.0.1:5901 名前:Localhost - Ubuntu@Xfce
このうち、「アドレス」項目は VNCserver のアドレスです。ローカル VNC サーバーに接続する必要があるため、127.0.0.1 を入力するだけです。また、端末から返された情報が次のとおりであるため、アドレスの後に VNC ポートを指定する必要もあります: New 'X' Desktop is localhost:1
デスクトップ セッション番号は 1 として指定されているため、ポートは 5900 1=5901 です。複数の 仮想デスクトップ を開いて、それらのセッション番号が 2、3、4... である場合、それぞれのポートは 5902、5903、5904... になります。さらに、サーバー アドレスとポートは英語のコロンで区切る必要があります。 「名前」項目は、この VNC セッションに対してユーザーが指定したアドレスです。他のセッションと区別するために、「Localhost - Ubuntu@Xfce」と入力します。実際には、任意の値を入力できます。
この情報を入力したら、[作成] ボタンをクリックして送信します。
可能問題:
rm -rf /tmp/。 Linux システムを毎回停止して再起動することによって発生するこの問題を防ぐために、/etc/rc.local ファイルを編集し、このファイルの
exit 0の前に次の 2 つのコマンドを挿入します。sudo vim /etc/rc.local #Edit/etc/rc.local
## 編集が完了したら、保存します。このステップを実行すると、Linux Deploy は、Linux システムの起動後、Linux システムを停止する前にこれら 2 つのコマンドを実行します。そのため、エラーは再度報告されません~
2. vncserver のデフォルトの解像度は 1024×768 ですが、市場にあるほとんどの携帯電話画面の解像度は 720P (1280×720)、1080P (1920×1080)、さらには 2K (2560×1440) です。 vncserver のデフォルトの 1024×768 解像度では、VNC 画像が画面いっぱいに表示されない可能性があります。現時点では、画面に合わせて VNC 解像度を変更する必要があります。1080P 画面を例としてテストした後、解像度 720P まで VNC 画像は、表示効果に影響を与えることなく画面いっぱいに表示できます。調整方法は、vncserver
コマンドを実行するたびに -geometry
パラメータを追加することです。たとえば、VNC 解像度を 720P (1280×720) に調整する必要がある場合は、 vncserver を起動し、
vncserver -geometry 1280x720
を実行して、新しく開かれた VNC 仮想セッションの画面解像度を 1280×720 に設定します。コマンドの 1280x720
の #xxx は小文字の #xxx
であり、数学の乗算記号 # ではないことに注意してください。
以下は、1280×720 解像度と 1024×768 解像度 (VNC Viewer 画面を最小化) の比較です。
vncserver を起動するたびに、このような長いコマンドのリストを入力するのが少し面倒であれば、
~/.bashrc ファイルを編集して、次の場所にエイリアス定義の行を追加できます。以下の図に示す場所: vim ~/.bashrc #Edit~/.bashrc
alias vncserver='vncserver -geometry 1280x720'Copy
コマンドが実行されるたびに、新しく開かれた VNC セッションの解像度が 1280×720 に設定されます。 。
アップグレード方法は、Ubuntu をインストールしてから直接アップグレードすることです。
VNC を使用してデスクトップにログインした後、ターミナルを使用してアップデータをインストールします
sudo apt install update-manager-core
sudo apt update && sudo apt upgrade sudo do-release-upgrade
sudo apt install gnupg gnupg1 gnupg2 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 871920D1991BC93C
apt clean apt autoclean sudo apt update sudo apt upgrade -y sudo apt dist-upgrade
アップグレード後、Linux デプロイ構成項目に戻り、ユーザー名を root に変更する必要があります。パスワードは変更しないでください。その理由は、アップグレード後、元の Android ユーザー名には root が含まれていないためです。権限
ユーザー名を変更した後は、必ず linuxdeploy の構成オプションをクリックして再構成してください
# 2023.3.8 更新 「必要な依存関係 'apt ( >= 2.0.4)' はインストールされていません。」 /etc/apt/source.list ファイルを変更する必要があります
## /etc/apt/source.list deb http://ports.ubuntu.com/ focal multiverse main universe deb-src http://ports.ubuntu.com/ focal multiverse main universe deb http://ports.ubuntu.com/ focal-updates main universe multiverse deb-src http://ports.ubuntu.com/ focal-updates main universe multiverse deb http://ports.ubuntu.com/ focal-security main universe multiverse deb-src http://ports.ubuntu.com/ focal-security main universe multiverse
以上がLinuxデプロイの用途は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。