A quoi sert le déploiement Linux

青灯夜游
青灯夜游original
2023-04-12 16:40:302210parcourir

linux déployer est utilisé pour déployer un environnement Linux sur des appareils Android. Le principe est d'exécuter un conteneur chroot ou proot sur la couche Linux d'Android, puis d'exécuter un autre système Linux que nous avons préparé dans le conteneur. Avant d'utiliser Linux Deploy, vous devez obtenir l'autorisation Root de votre téléphone.

A quoi sert le déploiement Linux

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

Linux Deploy est une application qui peut déployer un environnement Linux sur des appareils Android. Son principe est d'exécuter un conteneur chroot ou proot sur la couche Linux d'Android, puis d'exécuter un autre système Linux que nous avons préparé dans le conteneur. Il convient de noter que cela diffère de la technologie de machine virtuelle que nous connaissons. Le nouveau système Linux fonctionnera en parallèle avec le système Android (ne vous attardez pas sur les explications pour les non-professionnels).

Avant d'utiliser Linux Deploy, nous devons obtenir l'autorisation Root du téléphone mobile (obligatoire) Après avoir obtenu l'autorisation Root, étant donné que le jeu de commandes Linux fourni avec la machine d'origine est incomplet, nous devons installer Busybox. pour étendre le jeu de commandes Linux (non requis) L'installation est également possible).

Linux Deploy doit être installé dans le Google Store, ce qui n'est pas disponible dans les autres magasins d'applications Android. Le logiciel mentionné ci-dessous ne peut être installé que dans le Google Store. L'adresse de téléchargement est également fournie sous l'article
. A quoi sert le déploiement Linux

Une fois l'installation terminée, nous utiliserons Linux Deploy pour déployer le système Ubuntu sur les appareils Android :

Cliquez sur l'icône "Télécharger" en bas à droite de l'interface pour accéder à l'interface de configuration du fichier de configuration et effectuez les réglages suivants (je Je ne sais pas pourquoi les développeurs utilisent une telle icône "Télécharger" comme fichier de configuration Icône d'interface de configuration) :

Méthode de conteneurisation : "chroot"

Version de distribution : "Ubuntu"

Architecture : Conserver la valeur par défaut

Version de distribution : "yakkety" (c'est-à-dire Ubuntu 16.10)

Adresse source : mirror.tuna.tsinghua.edu.cn(Ici, nous déployons de la manière par défaut , c'est-à-dire en téléchargeant les composants Linux et les progiciels nécessaires à partir de la source du logiciel, car la vitesse de la source par défaut n'est pas bonne, afin de ne pas télécharger toute la journée et la nuit, nous utilisons ici la source miroir open source de l'Université Tsinghua. vous le déployez en mode Repository (ce sera discuté dans un article ultérieur), "l'adresse source" ici doit être renseignée dans le fichier Repository (le suffixe est tgz/tar.gz) le chemin local ou distant du fichier)

Type d'installation : Il existe deux suggestions pour cette option, "répertoire" et "fichier". Si vous n'êtes pas familier avec Linux et que la partition /data est laissée. Si l'espace est ≥ 2 Go, il est recommandé d'utiliser le "répertoire". méthode d'installation. Si vous êtes familier avec Linux ou si l'espace restant de la partition /data est

 Chemin d'installation : Lorsque "Chemin d'installation" sélectionne "Répertoire", cette option définira le chemin dans lequel le système est installé. Le chemin par défaut est ${ENV_DIR}/rootfs/linux,即安装在/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux目录下。"安装类型"选择"文件"时,这个选项将定义Linux系统安装在哪个镜像文件中,默认值为外置存储/linux.img.

  Taille de l'image (Mo) (disponible lorsque le type d'installation "sélectionne "Fichier") : Cette option définira la taille du fichier image où se trouve le système. Avant l'installation du système, un fichier vide avec la taille d'image définie sera créé dans le répertoire d'installation pour stocker les fichiers et les données du système (équivalent à l'espace disque total du nouveau système Linux). Il est recommandé de ne pas utiliser la valeur par défaut, remplir 2048m suffit

  Système de fichiers (disponible lors de l'installation). tapez "Sélectionner "Fichier") : Sélectionnez "Automatique".

Nom d'utilisateur : Cette option est le nom d'utilisateur lors de la connexion au système. La valeur par défaut est "android" et peut être modifiée à volonté.

 Mot de passe utilisateur : Cette option est le mot de passe de l'utilisateur dans le système Ubuntu, qui peut être renseigné selon vos propres habitudes.

 Utilisateurs privilégiés : conserver la valeur par défaut

Serveur DNS : Vous pouvez conserver la valeur par défaut, ou vous pouvez personnaliser l'adresse du serveur DNS (telle que 114.114.114.114, etc.)

Localisation : Il est recommandé de conserver la valeur par défaut POSIX. S'il y a d'autres besoins, tels que. comme laisser ssh renvoyer les résultats en chinois ou laisser Lorsque la langue d'affichage de l'interface graphique est le chinois, sélectionnez "zh_CN.UTF8"

  Élément INIT/MOUNTS : il peut être défini si nécessaire, et peut être ignoré s'il n'est pas requis.

 Autoriser le démarrage du serveur SSH : Activez cette option

 Paramètres SSH : Conserver la valeur par défaut

 Autoriser le démarrage de l'interface graphique : Vous pouvez la définir si nécessaire, mais cette option ne sera pas activée ici pour le moment (le l'article suivant présentera comment déployer l'interface graphique).

A quoi sert le déploiement Linux

Une fois le réglage terminé, appuyez sur la touche retour pour revenir à l'interface principale de l'application, appuyez sur la touche menu et sélectionnez "Installer" pour démarrer l'installation du système Linux. processus, vous devez maintenir une connexion réseau (il est recommandé d'installer sous WIFI, ce qui nécessite environ plusieurs centaines de mégaoctets de trafic).

  Lorsque vous voyez la sortie du terminal ">>>deploy", cela signifie que l'installation a commencé :

A quoi sert le déploiement Linux

Lorsque vous voyez la sortie du terminal "

A quoi sert le déploiement Linux

Cliquez sur le bouton "Démarrer" en bas de l'interface principale pour démarrer le système nouvellement installé, puis cliquez sur "Arrêter" pour arrêter le système.

A quoi sert le déploiement Linux

 À ce stade, la partie déploiement du système est décrite.

  Après le déploiement, nous devons utiliser des outils SSH tels que lJuiceSSH/ConnectBot pour nous connecter au système (ici nous prenons JuiceSSH comme exemple).

  Après avoir démarré le système avec succès, nous ouvrons JuiceSSH, cliquez sur "Connecter" - le bouton "+" dans le coin inférieur droit pour entrer dans la nouvelle interface de connexion :

  Pseudo : Vous pouvez le remplir à volonté, nous prenons "Localhost - Android" à titre d'exemple Type : SSH Adresse : 127.0 .0.1

A quoi sert le déploiement Linux

Authentification : Sélectionnez "Nouveau" pour accéder à l'interface "Nouvelle authentification" : Pseudonyme : Vous pouvez également le renseigner à volonté. Nous prenons également " Localhost - Android" à titre d'exemple. Nom d'utilisateur : Remplissez l'interface "Paramètres du profil". "Nom d'utilisateur", la valeur par défaut est Android Mot de passe : Remplissez le "Mot de passe utilisateur" défini dans l'interface "Paramètres du profil"

A quoi sert le déploiement Linux

Cliquez sur l'icône "√" dans le coin supérieur droit pour enregistrer et revenir à l'interface "Nouvelle connexion". Cliquez à nouveau sur l'icône "√" pour enregistrer, puis cliquez sur le projet nouvellement créé dans la "Liste de connexions" pour vous connecter. le système que nous venons de déployer. Une fois la connexion réussie, l'interface est la suivante :

A quoi sert le déploiement Linux

Puisque nous nous connectons au système via l'utilisateur ordinaire Android, nous devons ensuite définir le mot de passe du super utilisateur (root) et nous connecter au système en tant que super utilisateur :

Tapez le terminal :

sudo passwd root

 Le terminal demandera à l'utilisateur de saisir le mot de passe de l'utilisateur root et de le saisir à nouveau pour confirmer (le mot de passe ne sera pas visible lors de la saisie du mot de passe, et même * ne sera pas affiché). Une fois le réglage terminé, tapez la commande su dans le terminal et entrez la commande que vous venez de définir. Le mot de passe de l'utilisateur root peut être utilisé pour passer à l'utilisateur root.

Gestion des fichiers : Si vous déployez le système Linux via la méthode "répertoire", vous pouvez directement utiliser le R.E. Manager pour accéder /data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux pour gérer les fichiers dans le nouveau système. Si vous déployez le système Linux via la méthode "fichier", , vous devez compter sur SFTP pour la gestion des fichiers et d'autres opérations (bien sûr, il n'y a aucun problème avec SSH, mais je pense toujours que SFTP est plus pratique). Lorsque nous nous connectons à SFTP en tant qu'utilisateur normal, nous n'avons pas l'autorisation d'utiliser la plupart des fichiers pour des raisons d'autorisation. Nous devons donc nous connecter à SFTP en tant que superutilisateur. Mais la configuration par défaut ne permet pas à l'utilisateur root de se connecter à SSH et SFTP, nous devons donc définir les paramètres suivants :

Démarrez le système déployé dans Linux Deploy, connectez-vous à SSH en tant qu'utilisateur Android et exécutez-le dans le terminal :

sudo apt- get install -y vim #Install vim editor

Bien sûr, vous pouvez également utiliser l'éditeur vi fourni avec le système. Si vous êtes familier avec l'éditeur vi, vous pouvez également utiliser l'éditeur vi. pour éditer des fichiers. Une fois l'éditeur vim installé, nous continuons à l'exécuter dans le terminal :

vim /etc/ssh/sshd_config #Utilisez l'éditeur vim pour ouvrir le fichier /etc/ssh/sshd_config

Après avoir ouvert le fichier, tapez i pour entrez en mode édition et cliquez n'importe où sur le terminal. Le clavier à touches spéciales peut apparaître en position vide. Utilisez les curseurs haut et bas pour faire défiler le fichier. Recherchez l'élément PermitRootLogin dans la section #Authentification du fichier et remplacez-le par. oui. Une fois la modification terminée, cliquez sur la touche "ESC" du clavier spécial pour quitter le mode d'édition. Tapez : wq ! sur le clavier pour enregistrer et forcer la sortie du fichier pour terminer l'opération d'édition du fichier.

A quoi sert le déploiement Linux

 Ouvrez Linux Deploy, arrêtez puis démarrez le système Linux. Ouvrez "Turbo Client" - Barre latérale - Créez un nouveau compte - SFTP pour créer une nouvelle connexion SFTP (certains gestionnaires de fichiers, tels que ES File Explorer (ESFile Explorer) et SE File Manager (Solid Explorer) ont également des fonctions SFTP, si vous ne le faites pas. Si vous ne voulez pas installer TurboFTP, vous pouvez les utiliser à la place) :

A quoi sert le déploiement Linux

Où :

Nom d'utilisateur : root Le mot de passe est le mot de passe de l'utilisateur root que vous venez de définir Nom d'hôte : 127.0.0.1

Autres Gardez les éléments par défaut et cliquez sur l'icône "Enregistrer" dans le coin supérieur droit pour enregistrer la configuration. Dans la liste des connexions dans la barre latérale, nous nous connecterons à SFTP en tant qu'utilisateur root et gérerons les fichiers :

1A quoi sert le déploiement Linux

. Bien entendu, après avoir modifié le fichier sshd_config, après avoir arrêté et démarré le système Linux, vous pouvez également vous connecter directement à SSH en tant qu'utilisateur root. Après avoir présenté l'installation, introduisons la désinstallation ~ Vous pouvez désinstaller complètement Linux Deploy via les méthodes suivantes :

 1. Si vous utilisez la méthode « répertoire » pour déployer le système Linux, puis « arrêtez » le système Linux dans Linux Deploy, puis désinstallez directement Linux Deploy et redémarrez le téléphone pour désinstaller complètement 2. Si vous utilisez « fichier (miroir) » ) " pour déployer le système Linux, vous devez d'abord "arrêter" le système Linux, puis supprimer le fichier image placé dans le stockage intégré. Le chemin du fichier image est le "chemin d'installation" mentionné ci-dessus avant de déployer Linux. système. Si Si cet élément n'a pas été modifié, le chemin du miroir est 外置存储/linux.img,接着卸载Linux Deploy并重启手机即可完全卸载。

安装图形环境

修改以下配置项:

  INIT:   打勾:启用自定义脚本执行   (INIT的其他配置保持不变)

  图形界面:

  打勾:允许图形界面启动

  图形子系统:VNC

  图形化界面设定:保持默认配置

  桌面环境:按需选择,这里选择的是LXDE 

1A quoi sert le déploiement Linux
1A quoi sert le déploiement Linux
1A quoi sert le déploiement Linux

  配置完毕后,回到主界面,按下"菜单键",选择"配置"让我们刚才的的设置生效:

1A quoi sert le déploiement Linux
1A quoi sert le déploiement Linux

  配置完毕后,点击底部的"停止"按钮停止Linux系统,再点击"启动"按钮启动Linux系统,接着我们登入SSH,在终端中执行:

sudo apt-get install ttf-wqy-zenhei    #安装中文字库

  中文字库安装完毕后,执行以下命令启动VNC:

vncserver

  终端会返回以下结果:

New 'X' desktop is localhost:1  Starting applications specified in /home/android/.vnc/xstartup Log file is /home/android/.vnc/localhost:1.log
复制

  证明vncserver已启动成功。

  (注意,在某些时候,第一次执行vncserver命令时系统将要求你设定一个小于8位数的VNC密码,你需要输入两次密码之后提交,VNC密码设定完成之后还会有一个提示,不用理会,键入nSoumettre)

Entrez dans l'interface graphique :

Ensuite, nous utilisons VncViewer pour nous connecter à l'interface graphique que nous venons de déployer :

Ouvrez VncViewer et cliquez sur le bouton "+" dans le coin inférieur droit pour ajouter une session VNC :

Adresse : 127.0.0.1:5901 Nom : Localhost - Ubuntu@Xfce

 Parmi eux, l'élément "Adresse" est l'adresse du serveur VNC. Puisque nous devons nous connecter au serveur VNC local, il suffit de remplir 127.0.0.1. De plus, nous devons également spécifier le port VNC après l'adresse, car les informations qui viennent d'être renvoyées par le terminal : Nouveau bureau 'X'. est localhost:1 code> spécifie le numéro de session de bureau sur 1, donc le port est 5900+1=5901. Si nous ouvrons plusieurs bureaux virtuels<code>New 'X' desktop is localhost:1指定了此次桌面会话号为1,所以端口就为5900+1=5901。如果我们开启了多个虚拟桌面,它们的会话号为2,3,4...,那么各自的端口即为5902,5903,5904...依次类推。并且,服务器地址与端口之间需要用英文冒号隔开。"Name"项为用户为此VNC会话指定的地址,我们为了区别其他会话,填写的是Localhost - Ubuntu@Xfce,实际上随便填写什么都可以。

  这些信息填写完毕后,点击"CREATE"按钮提交:

A quoi sert le déploiement Linux
1A quoi sert le déploiement Linux

  确认信息无误后,点击下面绿色的"CONNECT"按钮开始连接VNC会话(如果你之前没有设定过VNC密码,但在连接VNC连接过程中仍然需要你输入密码时,那么你可以输入android用户的密码试试):

1A quoi sert le déploiement Linux
A quoi sert le déploiement Linux

  好了...图形界面的部署过程到此为止,剩下的你们自己折腾吧(/doge脸)~

可能遇到的问题:

  1. 当你开启了一个VNC会话,停止Linux系统再启动Linux系统后,再次执行vncserver命令,系统可能会报出以下错误:

2A quoi sert le déploiement Linux

  这时候,你可以执行以下两条命令:

rm -rf /tmp/.X[1-9]-lock
rm -rf /tmp/.X11-unix/X[1-9]

  执行完毕后,再执行vncserver,会话号就会被重置为1了。为了防止每次停止再启动Linux系统后带来的这个问题,我们可以编辑/etc/rc.local文件,在此文件的exit 0, leurs sessions Le nombre est 2, 3, 4..., alors les ports respectifs sont 5902, 5903, 5904... et ainsi de suite. De plus, l'adresse du serveur et le port doivent être séparés par deux points anglais. L'élément "Nom" est l'adresse spécifiée par l'utilisateur pour cette session VNC Afin de la distinguer des autres sessions, nous remplissons Localhost - Ubuntu@Xfce. En fait, vous pouvez remplir ce que vous voulez.

Après avoir rempli ces informations, cliquez sur le bouton "CRÉER" pour soumettre :

A quoi sert le déploiement Linux 2A quoi sert le déploiement Linux
1A quoi sert le déploiement Linux

Après avoir confirmé que les informations sont correctes, cliquez sur le bouton vert "CONNECT" ci-dessous pour commencer la connexion à la session VNC (si vous l'avez déjà fait. Si vous n'avez pas défini de mot de passe VNC, mais que vous devez quand même saisir le mot de passe pendant le processus de connexion VNC, vous pouvez essayer de saisir le mot de passe de l'utilisateur Android) :

🎜🎜A quoi sert le déploiement Linux🎜19 .png🎜🎜🎜A quoi sert le déploiement Linux🎜A quoi sert le déploiement Linux🎜

 OK ...le processus de déploiement de l'interface graphique se termine ici. D'ici là, vous pouvez faire le reste par vous-même (/doge face)~🎜

Problèmes que vous pourriez rencontrer :

 1. Lorsque vous avez ouvert une session VNC, arrêté le système Linux, redémarré le système Linux et exécuté à nouveau la commande vncserver, le système peut signaler l'erreur suivante : 🎜🎜🎜A quoi sert le déploiement Linux🎜2A quoi sert le déploiement Linux 🎜

A ce moment, vous pouvez exécuter les deux commandes suivantes : 🎜

rm -rf /tmp/.X[1-9]-lock
rm -rf /tmp/ Réinitialiser à 1. Afin d'éviter ce problème causé par l'arrêt et le redémarrage du système Linux à chaque fois, nous pouvons éditer le fichier /etc/rc.local et insérer ces deux commandes avant exit 0 dans ce fichier : 🎜🎜sudo vim /etc/rc.local #Edit/etc/rc.local🎜🎜🎜🎜🎜🎜🎜🎜Une fois l'édition terminée, enregistrez-la. Après cette étape, après avoir démarré le système Linux et avant d'arrêter le système Linux, Linux Deploy le fera. exécutez ces deux commandes pour nous, afin qu'aucune erreur ne soit à nouveau signalée ~🎜

 2. La résolution par défaut de vncserver est de 1024 × 768, mais la résolution de la plupart des écrans de téléphones mobiles sur le marché est de 720P (1280 × 720), 1080P (1920 × 1080) ou même 2K (2560 × 1440). La résolution de vncserver est La résolution de 1024 × 768 peut empêcher l'image VNC de remplir l'écran. À ce stade, nous devons modifier la résolution VNC pour l'adapter à l'écran. Après le test, en prenant l'écran 1080P comme exemple, le réglage. la résolution à 720P peut L'image VNC remplit l'écran sans affecter l'effet d'affichage. La méthode d'ajustement est qu'après chaque exécution de la commande vncserver命令时在后面加上-geometry参数,例如我需要把VNC分辨率调为720P(1280×720),那么在启动vncserver时,执行:

vncserver -geometry 1280x720

  即可将新开启的VNC虚拟会话屏幕分辨率设为1280×720。值得注意的是,命令中的1280x720里的x是小写字母x,而不是数学中的乘号×

  下面是1280×720分辨率和1024×768分辨率的对比(将VNC Viewer画面缩小到最小):

2A quoi sert le déploiement Linux
2A quoi sert le déploiement Linux

  很明显,1080P屏幕上,将VNC分辨率设为1280×720可使图像填充满屏幕且视觉效果更佳。

  如果你觉得每次启动vncserver时输这么一长串命令有点儿麻烦,那么可以编辑~/.bashrc文件,在下图所示的位置增加一行alias定义:

vim ~/.bashrc    #编辑~/.bashrc

alias vncserver='vncserver -geometry 1280x720'
复制

2A quoi sert le déploiement Linux

  之后,每次执行vncserver, la résolution de la session VNC nouvellement ouverte sera réglée sur 1280×720.

Mettre à niveau Ubuntu

Vous constaterez qu'Ubuntu ne peut être installé que vers la version 18.04

La méthode de mise à niveau consiste à installer Ubuntu, puis à mettre à niveau directement.

Après vous être connecté au bureau avec VNC, utilisez le terminal pour installer le programme de mise à jour

sudo apt install update-manager-core

Mettez à jour tous les packages vers la dernière version

sudo apt update && sudo apt upgrade
sudo do-release-upgrade

Si authentifiez 'focal.tar.gz' contre 'focal.tar.gz .gpg' apparaît. Erreur d'échec d'authentification, installez d'abord gnupg et exécutez les instructions suivantes :

sudo apt install gnupg gnupg1 gnupg2
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 871920D1991BC93C

Exécutez à nouveau sudo do-release-upgrade, entrez y pour commencer la mise à jour du système et suivez les instructions du terminal pour mettre à jour.

Si vous y êtes invité, veuillez installer toutes les mises à jour disponibles avant la mise à niveau

apt clean 
apt autoclean
sudo apt update 
sudo apt upgrade -y 
sudo apt dist-upgrade

Exécutez à nouveau sudo do-release-upgrade, entrez y pour commencer la mise à jour du système et suivez les instructions du terminal pour mettre à jour.

Si rien d'autre ne se passe mal, le système a été mis à niveau normalement.

Après la mise à niveau, vous devez toujours revenir aux éléments de configuration du déploiement Linux et changer le nom d'utilisateur en root. La raison est qu'après la mise à niveau, le nom d'utilisateur Android d'origine n'aura plus les autorisations root.

Après avoir modifié le nom d'utilisateur Assurez-vous de cliquer sur l'option de configuration du déploiement Linux pour reconfigurer

# Mis à jour le 2023.3.8 Si vous rencontrez "La dépendance requise 'apt (>= 2.0.4)' n'est pas installée." Vous devez modifier le fichier de liste /etc/apt/source.

## /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

Recommandations associées : "Tutoriel vidéo Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn